2 options
Enterprise android : programming android database applications for the enterprise / Zigurd Mednieks [and three others].
Connect to full text Available online
View online- Format:
- Book
- Author/Creator:
- Mednieks, Zigurd.
- Language:
- English
- Subjects (All):
- Android (Electronic resource).
- Enterprise application integration (Computer systems).
- Genre:
- Electronic books.
- Physical Description:
- 1 online resource (408 pages) : illustrations
- Edition:
- First edition.
- Place of Publication:
- Indianapolis, Indiana : John Wiley & Sons, [2014]
- System Details:
- text file
- Summary:
- Learn to build data-driven Android apps for enterprise systems, Android devices have moved beyond consumer applications into corporate and enterprise use. If you are eager to start building data-driven Android applications that integrate with enterprise systems, this book shows you how. The authors thoroughly explain how to use content providers to share data, adapters to display data, and web services to transmit data. They also show how to integrate applications with existing enterprise systems, secure data, and synchronize data. By the end of the book, you'll have a solid understanding of how to create data-intensive applications that today's businesses demand. Enterprise Android: Focuses on making and using simple databases for caching or syncing results for REST-based applications, Covers ContentProvider, REST, concurrency, and networking, Details ways to use Hibernate to create a RESTful web service and connect it to Android, Helps you enhance performance by avoiding CRUD-over-the-Internet, Gets you started writing backend cloud services that connect to Android, Introduces a new open source and generic synchronization framework designed specifically to integrate with Android APIs, Addresses the security-oriented aspect of application implementation, wrox.com, Programmer Forums, Join our Programmer to Programmer forums to ask and answer programming questions about this book, join discussions on the hottest topics in the industry, and connect with fellow programmers from around the world. Code Downloads, Take advantage of free code samples from this book, as well as code samples from hundreds of other books, all ready to use. Read More, Find articles, e-books, sample chapters, and tables of contents for hundreds of books, and more reference resources on programming topics that matter to you. Book jacket.
- Contents:
- Chapter 1 Developing for Android Tablets and Smartphones 1
- Android Is a Java Operating System 2
- Your Tools and Your First Android App 2
- Prerequisites and Getting Ready 2
- Toolchain Test Drive 4
- One Code-Base for All Types of Devices 4
- Getting Started with the Code Framework Example 5
- Automatically Adapting to Screen Size 10
- Components, Views, and Lifecycle 11
- Destroying and Re-Creating Components 11
- The MainActivity Class 12
- Activity: The Basic Unit of User Interaction 12
- Fragment: A Tool for Organizing Code and UI 17
- The PickFragment Class 18
- The ItemFragment Class 22
- The ItemDetailFragment Class 25
- Tying Together Activities, Fragments, and the Action Bar 25
- The Tabbed Activity Class 25
- A Main.xml File for Large Tablets 28
- A Main.xml and a Subsidiary Activity for Smaller Screens 29
- The TabActivity Class 30
- The Android Task and Process Model 33
- Starting Dalvik Instances 34
- Death, but No Transfiguration 34
- Tasks Span Applications and Processes 35
- Multiprocessing, Security, and Lifecycle 35
- The Process and User ID as Security Boundary 36
- Declaring Application Properties 36
- Summary 37
- Chapter 2 The Relational Model and Sqlite 39
- Databases and the Relational Model 40
- The History of the RDBMS 41
- The Relational Model 41
- Other DBMS Features 43
- The SQL Language 45
- Introduction to SQLite 48
- SQLite from the Command Line 49
- An Example SQLite Database 53
- Summary 58
- Chapter 3 Android Database Support 59
- SQL in Java: The SQLiteDatabase Class 60
- Basic SQL Embedding 60
- Syntactic SQL 61
- Creating a Database: The SQLiteOpenHelper Class 67
- Managing a Database 71
- Cursors, Loaders, and Adapters 73
- Cursors 74
- Adapters and View Binders 76
- Loaders 79
- Summary 81
- Chapter 4 Content Providers 83
- Using a Content Provider 84
- URIs as Names for Virtual Datasets 84
- Content Resolvers: The Link between Clients and Providers 85
- Content Observers: Completing the Loop 87
- IPC: System-Wide Accessibility 89
- The Contract: URIs and Types 90
- Authority 91
- Virtual Table URIs 93
- Return Value MIME Types 94
- Permissions 94
- Publishing the Contract 95
- Implementing the Content Provider 95
- Creating the Content Provider 96
- Return Types and the URI Matcher 97
- Writing the Database 98
- Database Queries 101
- Content Observers (Again) 105
- Permissions and Registration 106
- Content Providers and Files 109
- Summary 114
- Chapter 5 Rest, Content Providers, Concurrency, Networking, and Sync Adapters 115
- Basic REST 116
- Why REST? 117
- REST over HTTP 118
- An Example REST API 120
- Contact Representation 120
- Contact Methods and URIs 122
- Contact Transactions 122
- Android Networking 125
- The Apache Libraries 125
- Thejava.net Libraries 126
- Permissions 128
- Considering Concurrency and Lifecycles 128
- The Android Concurrency Architecture 128
- A Naive Request 129
- An Architecture for Robust Networking 131
- Approach 1 Service-Centric 131
- Approach 2 ContentProvider-Centric 133
- Approach 3 SyncAdapter-Centric 135
- REST within Android 135
- The restfulCachingProviderContacts Project: An Example Client 136
- Adding a Contact 138
- Using Sync Adapters 143
- Android Account Management 144
- Creating a Sync Adapter 155
- Summary 165
- Chapter 6 Service Development 167
- A Choice for Service Development 168
- The Lifecycle of a Request 168
- Three-Tier Service Architecture 169
- Service Development Background 169
- Building a RESTful Service for Contacts 172
- A Conservative Software Stack 172
- Writing the Examples: Spring Contacts Service and Its Synchronization Variant 175
- Code Example: Spring Sync Contacts Service 195
- Summary 202
- Chapter 7 Mobile and the Cloud 205
- Cloud Performance and Scalability 206
- The Scale of Mobile 207
- Persistence in the Cloud: From SQL to NoSQL 208
- Database File Format 211
- NoSQL Persistence 213
- Design Considerations for Scalable Persistence 215
- To SQL or Not to SQL? 215
- Looking at Popular Cloud Providers 218
- Amazon AWS 218
- Google App Engine 219
- Joyent: Hosted MongoDB+node.js 219
- Red Hat OpenShift 220
- Exploring the Code Examples 220
- The Contacts DAO Interface (Again) 221
- Writing the Code: Amazon Contacts Service 221
- Writing the Code: Google App Engine Contacts 235
- Summary 243
- Chapter 8 Complex Device-Based Data: Android Contacts 245
- PIM Databases: Fossils from Smartphone Pre-History 246
- Android's Contacts Provider 246
- The ContactsContract API 246
- A Contacts Provider Explorer 247
- Code for Exploring a Database 249
- Source Code for a Contacts Provider Explorer 249
- Summary 262
- Chapter 9 Generic Data Synchronization: Project Migrate and the Webdata API 265
- Introducing WebData and Project Migrate 266
- How Project Migrate Works 266
- How Project Migrate Streamlines the Mobile Connection to the Enterprise 267
- The WebData API in Detail 268
- The WebData API RESTful Protocol 269
- Project Migrate in Detail 279
- The Migrate Project Android WebData Client 279
- Project Migrate Android Features 279
- The WebData Content Provider Android API 281
- Android Built-in Provider APIs 281
- The Migrate Provider API 281
- Summary 281
- Service-Side Advantages 282
- Client Advantages 282
- Chapter 10 Webdata Applications 283
- The Migrate Client 284
- Creating a Migrate Project 285
- Step 1 Importing the Project 285
- Step 2 Enabling the Project as a Migrate Client 285
- Step 3 Defining the Information to Be Managed by Migrate 286
- Step 4 Generating the Contacts Contract 287
- Interfacing with the Migrate REST Proxy 291
- Step 5 Starting a Local Migrate Service 296
- Step 6 Publishing Your Application's Schema 296
- Setting Up a Device 298
- Step 1 Installing the Migrate Client 298
- Step 2 Adding a WebData Account 299
- Step 3 Turning on Synchronization 299
- Step 4 Running the Application 300
- Step 5 Configuring an Account in Migrate Contacts (Optional) 300
- Future Directions: MigrateClinic 300
- Summary 303
- Chapter 11 Building Human Interfaces for Data 305
- Modularity and Flexibility Compared with a "Cookbook" Approach 306
- Overview of Modules 306
- Layout Changes 307
- Direct Manipulation 308
- The TabbedActivity Class 308
- The TabbedPagedFragment Class 319
- Navigation 320
- Multitasking in a Small-Screen Environment 320
- The Android Task Model 320
- Tasks and the Conventional Process Model 321
- Modifying Task Behavior 321
- Navigation in Tablets 323
- Choosing to Use the Support Package 323
- Summary 324
- Chapter 12 Security 325
- Platform Security 326
- Keeping Handsets Safe 327
- Avoiding Malicious Applications 327
- Understand Malware Mechanics: The Malware Genome 330
- Writing Secure Applications 331
- Hacking Targets 331
- Ingredients of a Secure Application 332
- Example Code: Protecting RESTful Invocations 353
- Preventing Piracy 365
- Summary 366.
- Notes:
- Includes bibliographical references and index.
- Description based on print version record.
- Local Notes:
- Electronic reproduction. Palo Alto, Calif. : ebrary, 2014. Available via World Wide Web. Access may be limited to ebrary affiliated libraries.
- Other Format:
- Print version: Mednieks, Zigurd. Enterprise android : programming android database applications for the enterprise.
- ISBN:
- 9781118227473
- OCLC:
- 868914608
- Access Restriction:
- Restricted for use by site license.
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.