Other distribution means The last thing to be aware of with regard to distributing your application and the

B.5 Other distribution means The last thing to be aware of with regard to distributing your application and the

Android Market is the fact that there are other means. Various third-party sites offer distribution channels too. These sites have different agreement types and different payment models, so you should research them carefully before using them, but you should know that they are available.

These services include:

http://andappstore.com

http://slideme.org/

http://www.androidfreeware.org/ You may want to distribute your application only in the official Market or on third-

party services, or you may decide to use a combination. If you do use third-party ser- vices, keep in mind that these, while growing in popularity, are not as accessible to users as the built-in Market. (Users have to find the third-party service and generally then have to install applications on their own or at least bootstrap the service with an application specifically designed to use it.)

Lastly, you can deliver your .apk file on your own as well. Normal end users should not be expected to use the shell to install applications, of course, but you can point them to the APK Installer (which itself is in the Market), and they can install any archive you can deliver them. The more means you have at your disposal to get your applications into the hands of users, obviously, the better.

index

Symbols

objects 97

aidl tool 117, 125

automatically invoked 119 @ symbol 25

broadcasts Intent 219 Numerics

supports four Alarm types 222

alarms 219–225 graphics 238

2D CursorAdapter 64

custom 78

AlertDialog 66, 288

Android graphics 238

3D defined 63

application requires manifest shapes and surfaces 245

built-in applications 98 calling an Intent 104

A AdapterView 74 adb 41, 67, 136, 345, 376

development requires Java

skills 12 aapt 40, 85

devices 376

development tools abortBroadcast 206

installing and removing

applications 376

See also ADT

discourages direct file acceptance testing 380

AbsoluteLayout 81

sharing 23 access

issuing shell commands 376

drawing graphics 226–231 permissions 130

kill-server 376

Emulator 5 ACTION_DOWN 334

running in debug mode 376

Javadocs 72 ACTION_MOVE 334

shell 345, 358

licensing 10 ACTION_PICK 16

shell command 42

Linux kernal-based OS 4 ACTION_UP 334

start-server 376

logging mechanism 20 actions 103

addCallBack 241

market challenge same as using built ins 110

addProximityAlert 277

Palm 8 Activity 25, 36, 43, 59, 301, 303,

moving from Activity to built-in support 109

ADT 33, 38, 368

Activity 127 common way to invoke 66

configuring 373

Music Player 264 Default category

Installing 371

not a J2ME platform 13 designation 103

plug-in 52

platform 4–6 extended by user classes 18

AIDL 98, 117

resources 60 key 109

publishing 120

runtime 347 lifecycle 60–70

syntax 117

types 118

same but different 8

INDEX

Android (continued)

publishing 375 SDK 33

android:id 45

state 129 shell 27

android.graphics 227

argc 352 stack 11–12

android.intent.action.MAIN 25

argv 352 stock icon 302

android.intent.category.

ARM 342 user applications written in

LAUNCHER 25

Android/Linux application Java 4

android.net 168

on 352 using resources 84–93

android.provider.Telephony.

processor family 353 vs. iPhone 10

SMS_RECEIVED 22

arm-none-linux-gnueabi- what it is not 4

android.telephony 198, 207

gcc 342, 344, 347 android

android.util.Log class 47

arm-none-linux-gnueabi-ld 343 id 89

android.view 71

arm-none-linux-gnueabi- Android Application Wizard 43

Android/Java

objdump 343 Android Asset Packaging

refers to Java 341

arrays Tool 40

Android/Linux

defined 92 Android Asset Packaging Tool.

nontrivial activities 355

disabled by default 244 See aapt

refers to Linux 341

helpfulness 91 Android Debug Bridge. See adb

startup code appearance 352

asInterface 119 Android Development Tools. See

system libraries 347

ASL 10 ADT

AndroidManifest

assembly language 343 Android device

understanding the file 93–95

Atom Publishing Protocol 189 touch screen–capable 301

AndroidManifest.xml 22, 25, 44,

AtomPub 187, 189 Android Emulator 35, 38, 41,

capturing 262 network speed 51

AnimationDrawable 231

playback choppy 255 splash screen 304

animation-list tag 232

playing 253–254 testing core features 52

animations

Authentication Key 197 working with an SD card 140

Android supports four

authority 104 Android Interface Definition

types 92

Android Graphics API 231

AuthScope 184 Language. See AIDL

Android Javadocs 101

Apache 11

Android Market 10, 381

commons.io package 142

automatic updates 381

background task 114 content guidelines 381

HttpClient 177

BaseColumns 159 developer terms 381

ResponseHandler 179

BasicNameValuePair 185 importance 382

Apache Software License. See

Binary Runtime Environment Android packages 34

ASL

for Wireless. See BREW android.app 34

.apk file 40

bind to data 74 android.content 34

signing 377

Binder 98, 116, 124 android.graphics 34

APK Installer 379

onTransact 124 android.net 34

Apple AppStore 10

bindService 120, 122 android.opengl 34

Application

Bitmap 333 android.os 34

pass state between

BlackBerry 8, 10 android.provider 34

activities 66

email capabilities 8 android.telephony 34

application distribution

Bluetooth 11, 34 android.text 34

Android vs. iPhone 10

close-range wireless android.util 34

Application Layer 170

networking 168 android.view 34

Application Not Responding. See

not available in Android android.webkit 34

ANR

Emulator 168 android.widget 34

Application Wizard 47

BOOT_COMPLETED 107 Android Project Wizard 43

applications

BREW 8 Android resource files

distribution 382

broadcast Drawables 44

install on device 375

actions 111 Layout 44

key manifest elements 379

events 110 Values 44

lifecycle 59

manifest 164

permissions 111 permissions 111

outer class 145 IntentFilter 112

accessible by any

DBOpenHelper 144, 148 onReceive method 206

application 158

DDMS 35, 39, 218, 374 BufferedOutputStream 335

creating 158–165

option 214 BufferedReader 175

extending 160

Perspective 36, 38, 47, 56 BufferedWriter 175

updating data 157

DDMS tool build script

ContentResolver 23, 149, 154,

two contexts 268 need for 346

Debian 9 Builder pattern 67

deleting data 157

Debug 54 Bundle 21, 66, 186, 314, 336

ContentValues 262

Certificate 284 Burnette, Ed 36

contentView 229

Perspective 55–56 Button 62, 64, 326

Context 20, 64, 110, 132, 200,

debug.keystore 376 buttons

debugging 35, 55 tied to UI elements 65

corners 230

createPackageContext 132

DEFAULT_FOCUS 83

CSS 91

del.icio.us 187

C ctime 359

device ID 200

Cursor 24, 127, 144, 155

dex files 13

C 341

data items changed 164

dialer

populating 202 Callback 241

application 341

custom URI

digital signature camera

matching 105

required 376 on cell phone 257

Cancelable 321

D dimensions units of expression 90

carriers. See mobile operators directory

Canvas 333

DAL 144

change 346 category 94, 103

Dalvik Debug Monitoring Ser-

CATEGORY_LAUNCHER 15 disassembling 343

vice. See DDMS

characters 318 distribution

Dalvik virtual machine

classes.dex 49 cleaning up for 379

client/server 171 Document Type Definition. See ClientLogin 189, 192

data 103

import and export 380

DTD

CodeSourcery 342, 345 documentation.html 371 colors

inserting 156

Drawable 227–228 values expressed 90

persistence 66

drawable 304 com.google.android.maps 282

plans 49

drawBitmap 333 com.google.android.phone.

storage requirements 299

drawColor 333 Dialer 16

structures 311

DTD 312 command line 40

Data Access Layer 144

duration 232 command-line tools

Data Definition Language 359

/data/app directory 41

create batch builds 48

database 127

ComponentName 99

not WORLD_READABLE 148

connection

Eclipse 14, 33, 35, 138, 268 wireless internet 297

open a connection 148

build SMSNotifyExample 212 ConnectivityManager 172

persisting data to 143

DDMS view 345 mobile or WiFi 168

server 24

default perspective 370 Contacts

datagram 170

how Android components class structure 156

Daytime Client 362–365

fit 34 content

single Activity 362

IDE 43 // scheme 104

special permission 364

launch recording content provider 22–25

testing 364

application 264 CONTENT_URI 151, 158

Daytime Server 359

workspace prompt 369 ContentObserver 158

listens on TCP port 355, 363

daytime server 342

Eclipse IDE 368, 370 Eclipse IDE 368, 370

focus 82

glDrawArrays 244 EditText 29, 45, 62

nextFocusDown 83

glEnable 245 EditView 310

nextFocusLeft 83

glEnableClientState 244 electronic signature 297

start directive 354 emulator

ELF 352

override default behavior 83

state 66 advantages to using 50

format

Global System for Mobile switches 374

simple value 90

Communication 197 vs. simulator 52

formatNumber 204

gluLookAt 249 why preferred 52

frameAnimation 233

gluOrtho2D 244 Emulator Control view 39

FrameLayout 81

gluPerspective 249 End User License Agreement.

fromBundle 314, 325

parameters 246 See EULA

G glVertexPointer 244 endElement 318–319

GNU General Public License. See Enterprise Information

G1 GPL Systems 8

Google 4 equator

supports MP4 and 3GP 256

Android Market 10 base for latitude 269

Gallardo, David 36

Base Atom API 73 EULA 379

gcc 342, 350

Contacts 189 EVDO 52

GDATA API

Data 187, 189 event handling 64, 83

implementation of

Maps 27, 283 Executable and Linkable For-

AtomPub 189

GPL 10 mat. See ELF

not true REST 190

GPRS 51 exit 351

Gentoo 9

externalize string 89 GPS 7, 34, 266, 334

geo

fix 270

Exchange Format 270

Geocoder 290

most common location

F getFromLocation 290

provider 266

GPX 270, 274 FAT 140, 142

getFromLocationName 290

DDMS tool 272 Fedora (Red Hat) 9

map between point and

routes 271 Field Service Application 297

place 267

tracks 271 requirements 296–300

geocoding 289

waypoints 271 resource files 302

GeoPoint 267, 281

GSM 51, 197 FieldService Activity

getEmail 308

source files 302

Android standard 197 goal 306

getExtras 76, 325

gsm command 201 File 140

File Allocation Table 140

getSharedPreferences 127

File Explorer view 39

getSystemService 173, 200, 276

file permissions

Handango 10 notations 131

getTelephonyOverview

Handler 75, 87, 117, 306, file_get_contents 339

reset screen details 201

316, 321 FileInputStream 136, 142,

getText 48

messages reflecting 316, 335

getView 79

change 234 FileOutputStream 135, 142, 335 GL_DEPTH_TEST 245

Gibara, Tom 257

relationship diagram 180 files

send a Message 109 accessing 135

GL_LEQUAL 245–246

updating Adapter 77 read and write 136

GL_LESS 246

HandlerThread 77 filesystem 126, 134

GL_PROJECTION 244

Hatcher, Erik 48 based on Linux 134

GL_TRANGLE_STRIP 244

height FILL_PARENT 82

GL_TRIANGLE_STRIP 244

class 81 findViewById 30, 47, 62, 89

GL_Triangle_Strip

setting minimum 72 method 29

takes three vertices 242

HSCSD 51 finish 311, 322

GL_VERTEX_ARRAY 244

glClear 244

HSPDA 51

Java Micro Edition. See J2ME authentication 184

defined 15

Java Perspective 36, 56 defines internet rules 171

defined and invoked 99

Eclipse default 370 GET 183

definitions express 99

Java Runtime Environment. See GET method 177

explicit 17

JRE headers 184

Explicit Intent invocation 99

java.net 168, 177 parameters 184

Extras 99

java.text.NumberFormat 47 POST 177, 183, 334

handlers 102

JavaDoc 33 request 177

implicit 17

JDK 48, 368 response 177

Implicit Intent invocation 99

JDT 36, 49, 368 working with 176–186

object components 99

JobEntry 312 HttpClient 180

objects 97

JobListHandler 316, 319 HttpEntity 180

captured signature 335 HttpRequestHelper

Type 99

converting to 334 177, 182, 189

working with 98–110

JRE 368 HttpRequestInterceptor 184

works with IntentFilter 109

IntentFilter 20, 97, 99

HTTPS 187

classes defined 104

HttpUrlConnection 177

defined 15

Hypertext Transfer

keyboard 50 Protocol 168

defines relationship 15

object 102 works with Intent 109

Keyhole Markup Language 273 Ki

I intent-filter 26, 102 intents

authenticates SIM card 197 KML 273

IBinder 116, 124

coordinates 273 protocol 124

late binding 98

base of remoting

Interface Definition Language.

See IDL

DDMS tool 274

drawbacks 274 onBind 120

International Mobile Equipment

international standard 274 ICCID

transact 124

Identity 197

Placemark 273 identifies SIM card 197

International Mobile Subscriber

Point 273 icon

Identity 197

Knoppix 9 stock Android 302

Internet Layer 170

Kronos Group 238 id attribute 45

Internet Protocol 168

Inter-Process Communication.

region device is in 197 identifies device 197

address from command

latency 51 IMSI

line 175

latitude subscriber and network

network data 168

how expressed 269 identifier 197

IPC 98, 113, 117

launch screen 302 independent software vendor.

ipconfig 175

layout 72 See ISV

iPhone 8

create a screen 63 Indeterminate 321

vs. Android 10

two-step process 82 InputStream 316

ISV 17

LayoutParams 80, 88 instructional video 301

ItemizedOverlay 286

ld 349

LD_LIBRARY_PATH. 350 Intent 14, 66, 187, 203, 301

Integrated Circuit Card ID 197

LED 215 Action 99

libsqlite.so 359 actions 101

J2ME 8, 13

lifecycle Category 99

jarsigner 377

callback methods control Component 99

Java 4, 341

state 68 constants 101

keytool 377

entire lifecycle phase 69 Data 99

Java Developer Kit. See JDK

Java Developer Tools. See JDT

foreground phase 69

INDEX

lifecycle (continued)

sendEmptyMessageAtTime high-level methods 69

78 methods 68

sendEmptyMessageDelayed visible phase 69

Mac 8

78 LinearLayout 29, 81, 154

finding IP address 175

sendMessage 78 Link Layer 170

Mac OS X 370

Message object linker 348

MAIN LAUNCHER

do not reuse 322 arm-none-linux-gnueabi-

intent filter 107

MessageQueue 77 ld 349

main.xml 44

metrics Linux 4, 341, 370

makeText 214

location-related 266 alternative to Windows 9

managedQuery method 154

Microsoft building applications 341

Mandrake. See Mandriv

platforms compelling 8 Daytime Server 355

Mandriv 9

MIME type 104 file permissions 131

manifest 93

MIME_TYPE 158, 262 finding IP address 175

activity element 94

minSdkVersion 379 kernel 11

elements supported 94

mkdir 345 market diluted 9

file 106

mksdcard 256 success as kernel 9

intent-filter element 94

tool 140 Linux kernal

manifest element 94

mobile operators why use 12

namespace 94

response to Android 6 ListActivity 74

package declaration 94

threatened by Google 7 ListView 73–77, 324, 339

uses-permission 94

view of cell phones 6 local queuing 330

MapActivity 267, 276, 282, 284

mobile phone localhost 42

MapController 276, 285

basic states 200 Location 275, 280

maps 281

Mobile Safari 8 location

Maps application 269, 301

iPhone 8 awareness 266

MapView 267, 276, 282–284

Monkey exerciser 380 specify coordinates 268

animate 285

MotionEvent 333 updates 279

Google Maps API key 283

MP3 file Location Area Identity 197

satellite mode 283

play back 253 location-based service. See GPS

street-view mode 283

My Location 269 LocationListener 274, 279

traffic mode 283

MyLocationOverlay 286 onProviderDisabled 281

zoom 285

MySQL 299, 337 onProviderEnabled 281

MapViewActivity 275

margins 80

receive updates 267

McGovern, Robert 36

LocationManager 108, 116, 274

MD5 fingerprint 284

Criteria 277

National Data Buoy Center. See find available providers 267

media

NDBC getProvider 277

capturing 257–264

navigation 297 GPS_PROVIDER 277

MediaController 255

NBDC 267 NETWORK_PROVIDER 277

MediaPlayer.create(). 253

feeds 286 LocationProvider 266, 274, 277

MediaRecorder 262, 264

netstat 358 COARSE 278

Menu 65

network protocols 169 FINE 278

instead of on-screen

NetworkInfo 173 permissions 278

buttons 65

networking LogCat 55, 374

menu 65

overview 169–172 using a filter on 39

item 102

NOAA 267 logging 38

MenuItem 65, 100

node 170 longitude

MEPIS 9

nop 353 how expressed 269

Message 77, 109, 117, 180, 186,

North American Numbering loopback 170

Plan 205 don’t connect to 175

class 321

nostdlib 350 Looper 77, 322

handleMessage 78

Notification 116, 211 Loughran, Steve 48

instances 321

sendEmptyMessage 78

fields 215

Point 236 notifications

OpenGL for Embedded Systems.

port 355 introducing 215–219

See OpenGL ES

OpenGLContext 238

three ranges 172

openInputStream method 23

Ports

openRawResource 137

Dynamic and/or Private 172

Registered 172 -o switch 344

openSUSE 9

Well Known 172 objdump 343, 352

org.apache.httpclient 168

POST data 335 Observable pattern 83

OutputStream 334

postDelayed 306 Observer pattern 83

exposes chunks of XML 187 onActivityResult 308–309,

drawing 288

preferences 127 325, 329

event handling 288

preinit_array 354 onBind method 20

focus 288

prime meridian onCallStateChanged 201

onTap 288

base for longitude 269 onClick 48, 311

OverlayItem 286

printf 344 OnClickListener 48, 62, 64, 152

process onClickListener 83

isolated 98 onCreate 62, 68, 75

kill 41 method 20

Package Explorer 36

placed on a stack 67 onCreateOptionsMenu 64, 332

packet 170

pruning 67 onDraw 80, 333

Packet Video

process id. See PID OnFocusChangeListener

Open Core 11

projection 154 onListItemClick 76

market challenge same as

protocol onLocationChanged 280

Android 8

layers 170 onMeasure 80

Parcelable 124

Protocol Data Unit 210 onMenuItemSelected

parse Uri 101

path 104

Proxy 119

ps -a 27 onOptionsItemSelected 332

PathShape 227

putExtras 76 onPause 68

Qualcomm 8 onTouchEvent 333

SMS data packet 210

queryString 108 onVisibilityChanged 80

PendingIntent 208, 277

queuing Open Geospatial

permissions 94

local 330 Consortium 273

access 130

perspective

Open Handset Alliance 3–4, 50

clipping planes 246

OpenCORE 251–252

phone number 200

OpenCore 11

R class 30 openFileInput 135

PhoneNumberUtils 208

R.java 30, 60, 84 openFileOutput 134, 316

formatNumber helper

file 45, 302 OpenGL 347

method 204

raw resources 92 depth 245

parse and validate 204

receiver 107 perspective 246

PhoneStateListener

tag 26 primitives 242

RecordHit OpenGL ES 11, 237

PHP 299, 337

inserts record into SQLite 3D shapes 245

php://input 339

DB 358 Context 242

PictureCallback 259

RectShape 227 drawing shapes 242

PID 39, 67

RefreshJobs 319 Kronos Group 238

placement 80

relational database using with Android 238

Plain Old XML over HTTP 168

PNG 234

built-in 143

Simple API for XML. See SAX remoting 124

Starting vs. binding 122

Simple Object Access Protocol. removeProximityAlert 277

two purposes 113

See SOAP Representational State Transfer.

service

simulator See REST

long-running 117

vs. emulator 52 requestLocationUpdates 281

tag 26

simulator code use time parameter

Service-bound lifecycle 124

with Windows DLLs 52 carefully 281

ServiceConnection 114, 121

Slackware 9 resource types 85

Service-Oriented Architecture.

smartphones 6 Resources 137

See SOA

market leaders 8 raw resources 136

Services

SMS 16, 206, 212 XML resources 137

two purposes in Android 122

pdus 210 ResponseHandler 180, 183

Service-started lifecycle 123

permissions 209 REST 168, 189–193

setAudioEncoder 262

receiving messages 209 method 190

setAudioSource 262

send message to emulator 23 resource 189

setBounds 228

sending message to Android REST-style API 190

setContentView 62, 87

Emulator 39 uses URL-style approach 187

setContentView method 28

sending messages 208 return 351

setEmail 308

SmsManager 207 RISC 342

setIcon 65

SmsMessage 207, 210 RoundRectShape 227

setMediaController 256

SOA 98 router 171

setNotificationUri 164

SOAP 168, 193, 299 rpath 350

setOutputFormat 262

Run 54

imposes strict rules 187 Runnable 77, 235, 322

Socket 175, 364 S

server 173 Safari 8

shape

software version 200 SAX 73, 139

save 308

drawing a rectangle 227

Spinner 62–63 XML parser 316

ShapeDrawable 227

Splash Activity 302 scheme 104

SharedPreferences

splash screen 301, 304 SD card 139, 256

splashhandler 306 support 127

access mode 129

SQL 24 sdcard path 140

Context 127

statements 155 Secure Digital. See SD

Editor 129

SQLite 11, 66, 108, 126, secure shell 346

MODE_PRIVATE 131

299, 347 Secure Sockets Layer. See SSL

MODE_WORLD_READABLE

built-in database system 143 select 360

data types 145 Selman, Daniel 238

MODE_WORLD_WRITABLE

insert, update, and delete sendBroadcast 110

data 148 sendDataMessage 207

objects 131

insertion of data 355 sendMultipartTextMessage 207

storing with different

query 148 sendTextMessage 207

modes 127

supports ServerSocket 174

XML files permissions 131

WeatherReporter 127 Service 19, 25–26, 113, 120

sharedUserId 131, 136

sqlite3 143, 358 background task 114

Short Message Service. See SMS

tool 148–149 building 113–117

ShutterCallback 259

SQLiteDatabase 147, 161 cleaning up after stopped 124

signature

SQLiteOpenHelper 144 lifecycle 116, 123

electronic 297

SQLQueryBuilder 164 objects 97

JPEG image 301

SSL 298 onBind 116

SIM 196

start routine 352 onCreate 116

SIM card

startActivity 66, 101, 339 onDestroy 116

store user contacts 198

stored identifiers 197

method 19 method 19

UriBuilder 157

UriMatcher 161 method 19

using those built in 110 startElement 318

TelephonyManager 196, 198

URL 14 starting path 132

telnet 42

Usage Stats 374 startRecording 264

ID 136 startService method 19

.text 352

input 73 state

TextView 45, 89, 326, 362

UsernamePasswordCredentials instance 70

themes

184 pass between activities 66

vs. styles 91

uses-library 282 persistent 70

Thread 75, 234

uses-permission 26, 364 –static command-line switch 344 timestamp

TimerTask 116, 233

tag 26 –static flag

appending 142

applications self-

Toast

contained 347

alerts user 212

Vector 316 StringBuilder 318

toBundle 326

Verizon strings.xml 44

tool

Get It Now 8 stroke 230

aidl 117

versionCode 379 Structured Query Language. See

command-line 40

versionName 379 SQL

jarsigner 377

tool chain

video

Stub 117

playback choppy 255 styles 90

cross compiling 342

playing 254–257 helpfulness 91

Sourcery G++ Lite Edition for

video recording vs. themes 91

ARM 342

specific to phone vendor 252 stylus 301, 329

toString 314

VideoView 254 Subscriber Identity Module 196

toXMLString 314, 316

View 44, 59, 333 Sun Microsystems

Transport Layer 170

classes 71 licensing 13

Try/Catch 48

lifecycle methods 80 surfaceChanged 241

manipulating element 72 surfaceCreated 241

objects 97 surfaceDestroyed 241

single-threaded interface 84 SurfaceHolder 241–242

U.S. National Oceanic and

Atmospheric Administra-

view

SurfaceView 241

XML defined 87 Symbian 8

tion. See NOAA

Ubuntu 9

ViewGroup 72, 80, 285

vnd.android.cursor.dir 159 T

UDP

fire and forget 171

vnd.android.cursor.item 159

Uniform Resource Identifier. See

WEAK_FOCUS 83 TCP port

sockets 357

URI

web services 168, 186–194 Daytime Server listens 363

Uniform Resource Locator. See

Web Tools Platform 368 TCP/IP 38, 170

URL

WebKit 7, 11 telephony 195, 197

Unix

what 322 alert based on caller 205

Daytime Server 355

URI 14

width

alphabetic keypad 205

class 81 application manifest 203

Content 23

setting minimum 72 format number 204

examples 15

Wi-Fi 168 intercept call 205

syntax 151

no emulation layer 168 making calls 203

Uri 99, 104, 202

object 101

Window 238

X Y finding IP Address 175 Windows Mobile 10

Yahoo! Weather API Windows Mobile/SmartPhone 8

XML 299, 311

98, 105, 116 WinRAR 49

drawable shapes 228

drawing with 228

WRAP_CONTENT 82

stream 338

WS-* 193

XmlPullParser 139

M O BILE/ WIRELESS