1 option
Android Studio Jellyfish Essentials : Developing Android Apps Using Android Studio 2023.3.1 and Java / Neil Smyth.
- Format:
- Book
- Author/Creator:
- Smyth, Neil, author.
- Language:
- English
- Subjects (All):
- Java (Computer program language).
- Application software--Development.
- Application software.
- Android (Electronic resource).
- Physical Description:
- 1 online resource (862 pages)
- Edition:
- First edition.
- Place of Publication:
- [Place of publication not identified] : Payload Media, Inc, [2024]
- Summary:
- This book, fully updated for Android Studio Jellyfish (2023.3.1) and the new UI, teaches you how to develop Android-based applications using the Java programming language. This book begins with the basics and outlines how to set up an Android development and testing environment, followed by an overview of areas such as tool windows, the code editor, and the Layout Editor tool. An introduction to the architecture of Android is followed by an in-depth look at the design of Android applications and user interfaces using the Android Studio environment. Chapters also cover the Android Architecture Components, including view models, lifecycle management, Room database access, content providers, the Database Inspector, app navigation, live data, and data binding. More advanced topics such as intents are also covered, as are touch screen handling, gesture recognition, and the recording and playback of audio. This book edition also covers printing, transitions, and foldable device support. The concepts of material design are also covered in detail, including the use of floating action buttons, Snackbars, tabbed interfaces, card views, navigation drawers, and collapsing toolbars. Other key features of Android Studio and Android are also covered in detail, including the Layout Editor, the ConstraintLayout and ConstraintSet classes, MotionLayout Editor, view binding, constraint chains, barriers, and direct reply notifications. Chapters also cover advanced features of Android Studio, such as App Links, Gradle build configuration, in-app billing, and submitting apps to the Google Play Developer Console. Assuming you already have some Java programming experience, are ready to download Android Studio and the Android SDK, have access to a Windows, Mac, or Linux system, and have ideas for some apps to develop, you are ready to get started.
- Contents:
- Intro
- 1. Introduction
- 1.1 Downloading the Code Samples
- 1.2 Feedback
- 1.3 Errata
- 2. Setting up an Android Studio Development Environment
- 2.1 System requirements
- 2.2 Downloading the Android Studio package
- 2.3 Installing Android Studio
- 2.3.1 Installation on Windows
- 2.3.2 Installation on macOS
- 2.3.3 Installation on Linux
- 2.4 Installing additional Android SDK packages
- 2.5 Installing the Android SDK Command-line Tools
- 2.5.1 Windows 8.1
- 2.5.2 Windows 10
- 2.5.3 Windows 11
- 2.5.4 Linux
- 2.5.5 macOS
- 2.6 Android Studio memory management
- 2.7 Updating Android Studio and the SDK
- 2.8 Summary
- 3. Creating an Example Android App in Android Studio
- 3.1 About the Project
- 3.2 Creating a New Android Project
- 3.3 Creating an Activity
- 3.4 Defining the Project and SDK Settings
- 3.5 Modifying the Example Application
- 3.6 Modifying the User Interface
- 3.7 Reviewing the Layout and Resource Files
- 3.8 Adding Interaction
- 3.9 Summary
- 4. Creating an Android Virtual Device (AVD) in Android Studio
- 4.1 About Android Virtual Devices
- 4.2 Starting the Emulator
- 4.3 Running the Application in the AVD
- 4.4 Running on Multiple Devices
- 4.5 Stopping a Running Application
- 4.6 Supporting Dark Theme
- 4.7 Running the Emulator in a Separate Window
- 4.8 Removing the Device Frame
- 4.9 Summary
- 5. Using and Configuring the Android Studio AVD Emulator
- 5.1 The Emulator Environment
- 5.2 Emulator Toolbar Options
- 5.3 Working in Zoom Mode
- 5.4 Resizing the Emulator Window
- 5.5 Extended Control Options
- 5.5.1 Location
- 5.5.2 Displays
- 5.5.3 Cellular
- 5.5.4 Battery
- 5.5.5 Camera
- 5.5.6 Phone
- 5.5.7 Directional Pad
- 5.5.8 Microphone
- 5.5.9 Fingerprint
- 5.5.10 Virtual Sensors
- 5.5.11 Snapshots
- 5.5.12 Record and Playback
- 5.5.13 Google Play
- 5.5.14 Settings.
- 5.5.15 Help
- 5.6 Working with Snapshots
- 5.7 Configuring Fingerprint Emulation
- 5.8 The Emulator in Tool Window Mode
- 5.9 Creating a Resizable Emulator
- 5.10 Summary
- 6. A Tour of the Android Studio User Interface
- 6.1 The Welcome Screen
- 6.2 The Menu Bar
- 6.3 The Main Window
- 6.4 The Tool Windows
- 6.5 The Tool Window Menus
- 6.6 Android Studio Keyboard Shortcuts
- 6.7 Switcher and Recent Files Navigation
- 6.8 Changing the Android Studio Theme
- 6.9 Summary
- 7. Testing Android Studio Apps on a Physical Android Device
- 7.1 An Overview of the Android Debug Bridge (ADB)
- 7.2 Enabling USB Debugging ADB on Android Devices
- 7.2.1 macOS ADB Configuration
- 7.2.2 Windows ADB Configuration
- 7.2.3 Linux adb Configuration
- 7.3 Resolving USB Connection Issues
- 7.4 Enabling Wireless Debugging on Android Devices
- 7.5 Testing the adb Connection
- 7.6 Device Mirroring
- 7.7 Summary
- 8. The Basics of the Android Studio Code Editor
- 8.1 The Android Studio Editor
- 8.2 Splitting the Editor Window
- 8.3 Code Completion
- 8.4 Statement Completion
- 8.5 Parameter Information
- 8.6 Parameter Name Hints
- 8.7 Code Generation
- 8.8 Code Folding
- 8.9 Quick Documentation Lookup
- 8.10 Code Reformatting
- 8.11 Finding Sample Code
- 8.12 Live Templates
- 8.13 Summary
- 9. An Overview of the Android Architecture
- 9.1 The Android Software Stack
- 9.2 The Linux Kernel
- 9.3 Hardware Abstraction Layer
- 9.4 Android Runtime - ART
- 9.5 Android Libraries
- 9.5.1 C/C++ Libraries
- 9.6 Application Framework
- 9.7 Applications
- 9.8 Summary
- 10. The Anatomy of an Android App
- 10.1 Android Activities
- 10.2 Android Fragments
- 10.3 Android Intents
- 10.4 Broadcast Intents
- 10.5 Broadcast Receivers
- 10.6 Android Services
- 10.7 Content Providers
- 10.8 The Application Manifest.
- 10.9 Application Resources
- 10.10 Application Context
- 10.11 Summary
- 11. An Overview of Android View Binding
- 11.1 Find View by Id
- 11.2 View Binding
- 11.3 Converting the AndroidSample project
- 11.4 Enabling View Binding
- 11.5 Using View Binding
- 11.6 Choosing an Option
- 11.7 View Binding in the Book Examples
- 11.8 Migrating a Project to View Binding
- 11.9 Summary
- 12. Understanding Android Application and Activity Lifecycles
- 12.1 Android Applications and Resource Management
- 12.2 Android Process States
- 12.2.1 Foreground Process
- 12.2.2 Visible Process
- 12.2.3 Service Process
- 12.2.4 Background Process
- 12.2.5 Empty Process
- 12.3 Inter-Process Dependencies
- 12.4 The Activity Lifecycle
- 12.5 The Activity Stack
- 12.6 Activity States
- 12.7 Configuration Changes
- 12.8 Handling State Change
- 12.9 Summary
- 13. Handling Android Activity State Changes
- 13.1 New vs. Old Lifecycle Techniques
- 13.2 The Activity and Fragment Classes
- 13.3 Dynamic State vs. Persistent State
- 13.4 The Android Lifecycle Methods
- 13.5 Lifetimes
- 13.6 Foldable Devices and Multi-Resume
- 13.7 Disabling Configuration Change Restarts
- 13.8 Lifecycle Method Limitations
- 13.9 Summary
- 14. Android Activity State Changes by Example
- 14.1 Creating the State Change Example Project
- 14.2 Designing the User Interface
- 14.3 Overriding the Activity Lifecycle Methods
- 14.4 Filtering the Logcat Panel
- 14.5 Running the Application
- 14.6 Experimenting with the Activity
- 14.7 Summary
- 15. Saving and Restoring the State of an Android Activity
- 15.1 Saving Dynamic State
- 15.2 Default Saving of User Interface State
- 15.3 The Bundle Class
- 15.4 Saving the State
- 15.5 Restoring the State
- 15.6 Testing the Application
- 15.7 Summary
- 16. Understanding Android Views, View Groups and Layouts.
- 16.1 Designing for Different Android Devices
- 16.2 Views and View Groups
- 16.3 Android Layout Managers
- 16.4 The View Hierarchy
- 16.5 Creating User Interfaces
- 16.6 Summary
- 17. A Guide to the Android Studio Layout Editor Tool
- 17.1 Basic vs. Empty Views Activity Templates
- 17.2 The Android Studio Layout Editor
- 17.3 Design Mode
- 17.4 The Palette
- 17.5 Design Mode and Layout Views
- 17.6 Night Mode
- 17.7 Code Mode
- 17.8 Split Mode
- 17.9 Setting Attributes
- 17.10 Transforms
- 17.11 Tools Visibility Toggles
- 17.12 Converting Views
- 17.13 Displaying Sample Data
- 17.14 Creating a Custom Device Definition
- 17.15 Changing the Current Device
- 17.16 Layout Validation
- 17.17 Summary
- 18. A Guide to the Android ConstraintLayout
- 18.1 How ConstraintLayout Works
- 18.1.1 Constraints
- 18.1.2 Margins
- 18.1.3 Opposing Constraints
- 18.1.4 Constraint Bias
- 18.1.5 Chains
- 18.1.6 Chain Styles
- 18.2 Baseline Alignment
- 18.3 Configuring Widget Dimensions
- 18.4 Guideline Helper
- 18.5 Group Helper
- 18.6 Barrier Helper
- 18.7 Flow Helper
- 18.8 Ratios
- 18.9 ConstraintLayout Advantages
- 18.10 ConstraintLayout Availability
- 18.11 Summary
- 19. A Guide to Using ConstraintLayout in Android Studio
- 19.1 Design and Layout Views
- 19.2 Autoconnect Mode
- 19.3 Inference Mode
- 19.4 Manipulating Constraints Manually
- 19.5 Adding Constraints in the Inspector
- 19.6 Viewing Constraints in the Attributes Window
- 19.7 Deleting Constraints
- 19.8 Adjusting Constraint Bias
- 19.9 Understanding ConstraintLayout Margins
- 19.10 The Importance of Opposing Constraints and Bias
- 19.11 Configuring Widget Dimensions
- 19.12 Design Time Tools Positioning
- 19.13 Adding Guidelines
- 19.14 Adding Barriers
- 19.15 Adding a Group
- 19.16 Working with the Flow Helper.
- 19.17 Widget Group Alignment and Distribution
- 19.18 Converting other Layouts to ConstraintLayout
- 19.19 Summary
- 20. Working with ConstraintLayout Chains and Ratios in Android Studio
- 20.1 Creating a Chain
- 20.2 Changing the Chain Style
- 20.3 Spread Inside Chain Style
- 20.4 Packed Chain Style
- 20.5 Packed Chain Style with Bias
- 20.6 Weighted Chain
- 20.7 Working with Ratios
- 20.8 Summary
- 21. An Android Studio Layout Editor ConstraintLayout Tutorial
- 21.1 An Android Studio Layout Editor Tool Example
- 21.2 Preparing the Layout Editor Environment
- 21.3 Adding the Widgets to the User Interface
- 21.4 Adding the Constraints
- 21.5 Testing the Layout
- 21.6 Using the Layout Inspector
- 21.7 Summary
- 22. Manual XML Layout Design in Android Studio
- 22.1 Manually Creating an XML Layout
- 22.2 Manual XML vs. Visual Layout Design
- 22.3 Summary
- 23. Managing Constraints using Constraint Sets
- 23.1 Java Code vs. XML Layout Files
- 23.2 Creating Views
- 23.3 View Attributes
- 23.4 Constraint Sets
- 23.4.1 Establishing Connections
- 23.4.2 Applying Constraints to a Layout
- 23.4.3 Parent Constraint Connections
- 23.4.4 Sizing Constraints
- 23.4.5 Constraint Bias
- 23.4.6 Alignment Constraints
- 23.4.7 Copying and Applying Constraint Sets
- 23.4.8 ConstraintLayout Chains
- 23.4.9 Guidelines
- 23.4.10 Removing Constraints
- 23.4.11 Scaling
- 23.4.12 Rotation
- 23.5 Summary
- 24. An Android ConstraintSet Tutorial
- 24.1 Creating the Example Project in Android Studio
- 24.2 Adding Views to an Activity
- 24.3 Setting View Attributes
- 24.4 Creating View IDs
- 24.5 Configuring the Constraint Set
- 24.6 Adding the EditText View
- 24.7 Converting Density Independent Pixels (dp) to Pixels (px)
- 24.8 Summary
- 25. A Guide to Using Apply Changes in Android Studio
- 25.1 Introducing Apply Changes.
- 25.2 Understanding Apply Changes Options.
- Notes:
- Description based on publisher supplied metadata and other sources.
- Description based on print version record.
- Includes index.
- ISBN:
- 9781951442866
- 1951442865
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.