Дейтел П., Дейтел Х. - Android Для Разработчиков (2015)

  • Upload
    nelshuk

  • View
    252

  • Download
    0

Embed Size (px)

DESCRIPTION

Более миллиона человек во всем мире воспользовались книгами Дейтелов, чтобы освоить Java, C#, C++, C, веб-программирование, JavaScript, XML, Visual Basic, Visual C++, Perl, Python и другие языки программирования. Эта книга, выходящая уже во втором издании, даст вам всё, что нужно, для начала разработки приложений для Android и быстрой публикации их на Google Play. Авторы используют приложение-ориентированный подход, при котором описание каждой технологии рассматривается на примере 16 полностью протестированных приложений для Android. Кроме описания процесса создания при-ложений, в книге дано пошаговое руководство по размещению ваших приложений на Google Play и примеры успешных публикаций. Новое издании книги полностью обновлено и содержит информацию о работе с Android 4.3 и 4.4, разработке на Eclipse и новом Android Studio.

Citation preview

  • 32.973.2-018.1 004.4366

    .,.,.66 Android . .: , 2015. 384 .: . ( - ). ISBN 978-5-496-01517-2

    , Java, C#, C++, C, -, JavaScript, XML, Visual Basic, Visual C++, Perl, Python .

    , , , , Android Google Play. - , 16 Android. -, Google Play . Android 4.3 4.4, Eclipse Android Studio.

    12+ ( 29 2010 . 436-.)

    32.973.2-018.1 004.43

    Prentice Hall, Inc. Upper Sadle River, New Jersey 07458. . - .

    , , , -. , , , .

    ISBN 978-0133570922 . Prentice HallISBN 978-5-496-01517-2 , 2015 , , 2015

  • .......................................................................................... 16 ..................................................................................... 17 ..................................................................................................................... 17

    ............................................................................................................ 18 .................................................................................... 19

    .............................................................................................................................. 20 ..................................................................................................................................... 21

    ............................................................................................. 23 .......................................... 23

    Java Development Kit (JDK) ...................................................................... 23 .................................................................................................. 24Android 4.3 SDK .................................................................................................................. 25

    Android (AVD) Android ............................................................................................................................................ 26

    Android ...................................................... 28 ........................................................................................... 29

    1. Android ................................................................. 311.1. ................................................................................................................................. 321.2. Android ......... 321.3. Android ......................................................................................................... 331.4. Android ..................................................................................... 37

    1.4.1. Android 2.2 (Froyo) ................................................................................................. 381.4.2. Android 2.3 (Gingerbread) ..................................................................................... 391.4.3. Android 3.03.2 (Honeycomb) ............................................................................. 391.4.4. Android Ice Cream Sandwich ................................................................................ 401.4.5. Android 4.14.3 (Jelly Bean) ................................................................................. 411.4.6. Android 4.4 (KitKat) ............................................................................................... 42

  • 6

    1.5. Google Play .......................................................................... 431.6. ..................................................................................................................................... 451.7. Android Software Development Kit (SDK) .................................................................. 461.8. - ...................... 49

    1.8.1. ......................................................................................... 501.8.2. ..................................................................................................... 501.8.3. ............................................................................... 511.8.4. .................................................................................... 511.8.5. ............................................................................ 511.8.6. .................................................. 511.8.7. .......................................................................................................... 521.8.8. ............................................................................................................ 521.8.9. - ............................ 52

    1.9. Doodlz AVD .............. 531.9.1. Doodlz AVD Nexus 4 ................... 541.9.2. Doodlz App AVD ........................................................ 641.9.3. Doodlz Android ......................... 64

    1.10. Android- .............................................................. 661.11. ........................................................................................... 681.12. .................................................................................................................................. 70

    2. Welcome ............................................................. 722.1. ................................................................................................................................. 732.2. ................................................................................... 74

    2.2.1. Android Developer Tools IDE ............................................................................... 742.2.2. TextView ImageView ........................................................................................... 742.2.3. ............................................................................................. 742.2.4. ............................................................................................................... 742.2.5. .......................................................................................... 75

    2.3. ....................................................................................................... 752.3.1. Android Developer Tools .. 752.3.2. ...................................................................................... 752.3.3. New Android Application ..................................................... 752.3.4. Configure Project ............................................................................................ 782.3.5. Configure Launcher Icon............................................................................... 782.3.6. Create Activity ................................................................................................. 802.3.7. Blank Activity .................................................................................................. 81

  • 7

    2.4. Android Developer Tools ......................................................................................... 822.4.1. Package Explorer ........................................................................................... 822.4.2. ......................................................................................................... 832.4.3. ....................................................................................................... 842.4.4. ............................................................................. 842.4.5. ................................................................................................ 852.4.6. .......................................................... 85

    2.5. .............................................. 872.5.1. ................................................................... 872.5.2. Id RelativeLayout TextView ......... 882.5.3. TextView ...................................................................... 89

    2.6. Welcome ............................................................................... 962.7. ...................................................................... 972.8. ............................................................................. 992.9. ...................................................................................................................................104

    3. Tip Calculator ................................................... 1053.1. ...............................................................................................................................1063.2. Tip Calculator ................................................................1073.3. .................................................................................108

    3.3.1. Activity .........................................................................................................1083.3.2. .........................................................1083.3.3. LinearLayout GridLayout ............................................................................................1093.3.4. ......................................1103.3.5. ......1113.3.6. TextWatcher EditText ...................................................................................................1113.3.7. OnSeekBarChangeListener SeekBar .....................................................................1123.3.8. AndroidManifest.xml ............................................................................................112

    3.4. ............................................1123.4.1. GridLayout ...............................................................................................1123.4.2. TipCalculator .......................................................................1143.4.3. GridLayout ..........................................................................1153.4.4. TextView, EditText, SeekBar LinearLayout ...................................................................................................................1163.4.5. ......................................................................................118

  • 8

    3.5. .......................................................1233.6. AndroidManifest.xml ............................................................................................1323.7. ...................................................................................................................................133

    4. Twitter Searches ........................................... 1354.1. ...............................................................................................................................1364.2. .............................................................................................137

    4.2.1. ........................................................1374.2.2. ................................................................................1374.2.3. ...........................................................................1394.2.4. .....................................................................................1404.2.5. ................................................................................................1414.2.6. ...................................................................................................1424.2.7. ....................................................143

    4.3. .................................................................................1444.3.1. ListView .....................................................................................................................1444.3.2. ListActivity ...............................................................................................................1454.3.3. ListActivity ..........................................................................1454.3.4. ImageButton .............................................................................................................1454.3.5. SharedPreferences ..................................................................................................1454.3.6. ...........................................................1464.3.7. AlertDialog ...............................................................................................................1474.3.8. AndroidManifest.xml .................................................................................148

    4.4. ............................................1484.4.1. ..................................................................................................1484.4.2. activity_main.xml .......................................................................................1494.4.3. GridLayout ..........................................1504.4.4. ................................................1554.4.5. ListView: list_item.xml ........................................................157

    4.5. MainActivity ..................................................................................1584.5.1. package import ..................................................................................1594.5.2. ListActivity .....................................................................................1604.5.3. MainActivity ..................................................................................1614.5.4. onCreate .........................................1624.5.5. , OnClickListener ...............1644.5.6. addTaggedSearch .......................................................................................167

  • 9

    4.5.7. , OnItemClickListener ListView ...........................................................................................................1684.5.8. , OnItemLongClickListener ListView , ........................................................................................................1704.5.9. shareSearch .................................................................................................1724.5.10. deleteSearch .............................................................................................174

    4.6. AndroidManifest.xml .........................................................................................................1754.7. ...................................................................................................................................176

    5. Flag Quiz ........................................................... 1775.1. ...............................................................................................................................1785.2. Flag Quiz .........................................................................179

    5.2.1. ........................................................1795.2.2. .........................................................................................1805.2.3. ........................................................................180

    5.3. .................................................................................1845.3.1. ..........................................................................................................................1845.3.2. ...............................................................................................................1845.3.3. ........................................................1855.3.4. ...................................................................................1865.3.5. Preference ...............................................................................................1865.3.6. assets..............................................................................................................1865.3.7. ......................................................................................................1875.3.8. ................................1875.3.9. .............................................................................1885.3.10. ........................................................................1885.3.11. ...........................................................................................................1895.3.12. .......................................................1895.3.13. Log.e ..............................................1895.3.14. ..............................................................................1905.3.15. Java ....................................................................................190

    5.4. ................................1905.4.1. ..................................................................................................1905.4.2. strings.xml ............................................191

  • 10

    5.4.3. arrays.xml ................................................................................................................1925.4.4. colors.xml ...................................................................................................................1935.4.5. dimens.xml ................................................................................................................1945.4.6. activity_settings.xml ................................................................................1945.4.7. activity_main.xml .........................................................................................................................1955.4.8. fragment_quiz.xml .....................................................................................1965.4.9. activity_main.xml .......1985.4.10. preferences.xml ...................................................................................................................1995.4.11. ................................................201

    5.5. MainActivity ...........................................................................................................2035.5.1. package, import .....................................................2035.5.2. onCreate .................................................................2045.5.3. onStart ....................................................................2065.5.4. onCreateOptionsMenu .......................................2075.5.5. onOptionsItemSelected ......................................2085.5.6. , OnSharedPreferenceChangeListener .........................................................................208

    5.6. QuizFragment .........................................................................................................2105.6.1. package import ...............................................................2105.6.2. ...........................................................................................................................2115.6.3. onCreateView ........................................................2125.6.4. updateGuessRows ....................................................................................2145.6.5. updateRegions ............................................................................................2155.6.6. resetQuiz .....................................................................................................2155.6.7. loadNextFlag .............................................................................................2175.6.8. getCountryName .......................................................................................2195.6.9. , OnClickListener ...............................................................................................................2205.6.10. disableButtons ........................................................................................222

    5.7. SettingsFragment ...................................................................................................2235.8. SettingsActivity ......................................................................................................2235.9. AndroidManifest.xml ........................................................................................................2245.10. ................................................................................................................................225

    6. Cannon Game ................................................... 2276.1. ...............................................................................................................................228

  • 11

    6.2. Cannon Game .................................................................2296.3. .................................................................................230

    6.3.1. ................2306.3.2. raw ................................................................2306.3.3. ...............................2306.3.4. onTouchEvent View ...............................2316.3.5. SoundPool AudioManager ....................2316.3.6. , SurfaceView SurfaceHolder ..................................................................................................................2326.3.7. .............................................................2326.3.8. Paint Canvas ..........................................233

    6.4. ...........2337.4.1. ..................................................................................................2336.4.2. strings.xml ....................................................................................................2346.4.3. fragment_game.xml ....................................................................................2346.4.4. activity_main.xml ......................................................................................2356.4.5. ...................................................................235

    6.5. Line .............................................................................................................................2366.6. MainActivity ...........................................................................................................2366.7. CannonGameFragment .........................................................................................2376.8. CannonView ............................................................................................................238

    6.8.1. package import ................................................................2396.8.2. .........................................................2396.8.3. ............................................................................................................2416.8.4. onSizeChanged View .............................2436.8.5. newGame .....................................................................................................2446.8.6. updatePositions .........................................................................................2456.8.7. fireCannonball CannonView ....................................................2496.8.8. alignCannon ................................................................................................2496.8.9. drawGameElements ..................................................................................2506.8.10. showGameOverDialog...........................................................................2526.8.11. stopGame releaseResources ...........................................................2546.8.12. SurfaceHolder.Callback .............................................2546.8.13. onTouchEvent .....................................................2556.8.14. CannonThread: ..........................................................................................................................256

    6.9. ...................................................................................................................................258

  • 12

    7. Doodlz ............................................................... 2597.1. ...............................................................................................................................2607.2. .................................................................................261

    7.2.1. SensorManager .........................................................2627.2.2. DialogFragment .........................................2627.2.3. Canvas Bitmap .........................................2637.2.4. Path ..................................................................................................................2637.2.5. Android 4.4 ........................................................................2637.2.6. GestureDetector SimpleOnGestureListener ...............................................2647.2.7. ...................................................2647.2.8. Android 4.4 PrintHelper Android Support Library ............................................................................................264

    7.3. ...........2647.3.1. ..................................................................................................2657.3.2. strings.xml .....................................................................................................2657.3.3. dimens.xml ....................................................................................................2667.3.4. DoodleFragment .......................................................................................2677.3.5. activity_main.xml MainActivity ..................................................2687.3.6. fragment_doodle.xml DoodleFragment .................2697.3.7. fragment_color.xml ColorDialogFragment ..........2697.3.8. fragment_line_width.xml LineWidthDialogFragment ............................................................................................2727.3.9. EraseImageDialogFragment .........................................273

    7.4. MainActivity ...........................................................................................................2747.5. DoodleFragment .....................................................................................................2757.6. DoodleView .............................................................................................................2827.7. ColorDialogFragment ...........................................................................................2957.8. LineWidthDialogFragment .................................................................................2997.9. EraseImageDialogFragment ................................................................................3027.10. ................................................................................................................................304

    8. Address Book .................................................... 3068.1. ...............................................................................................................................3078.2. Address Book ..................................................................3098.3. .................................................................................311

    8.3.1. FragmentTransaction ....311

  • 13

    8.3.2. .......................................................................................................................3118.3.3. onSaveInstanceState ................................................................................3128.3.4. GUI ........................3128.3.5. TextView ..........................................3128.3.6. ListFragment , ListView.....................................................................................................3128.3.7. SQLite ..........................................................................3138.3.8. GUI AsyncTask ........................................................................................313

    8.4. .........3138.4.1. ..................................................................................................3138.4.2. .........................................................................3148.4.3. strings.xml .....................................................................................................3158.4.4. styles.xml .......................................................................................................3168.4.5. textview_border.xml .................................................................................3178.4.6. MainActivity: activity_main.xml ............................................3178.4.7. DetailsFragment: fragment_details.xml ................................3188.4.8. AddEditFragment: fragment_add_edit.xml ......................................3208.4.9. .......................................................................321

    8.5. MainActivity ...........................................................................................................3238.6. ContactListFragment ............................................................................................3298.7. AddEditFragment ..................................................................................................3368.8. DetailsFragment .....................................................................................................3428.9. DatabaseConnector ............................................................3508.10. ................................................................................................................................356

    9. Google Play .............. 3589.1. ...............................................................................................................................3599.2. ....................................................................359

    9.2.1. .................................................................................3609.2.2. .................................................................................3609.2.3. .......................................................................................................3609.2.4. ..........................................................................3619.2.5. ...............................................................................................3629.2.6. ...................................................................................................3629.2.7. ..............................362

  • 14

    9.2.8. .......................................................................................................3639.2.9. ........................................................................364

    9.3. : ? ..........................................................3659.3.1. ..........................................................................................3669.3.2. ....................................................................................367

    9.4. ............................3689.5. ............................................................3699.6. Google Play .............................................................................................3719.7. Google Wallet ...................................................................3719.8. Google Play .........................................................................3729.9. Play Store ................................................................................3749.10. Google Play .............................................................3759.11. Android ..................................................................3759.12. ..............................3769.13. ................................................................................................3779.14. ................................................................................................................................382

  • . , MIT, Bose Corporation.

    , - , . , , , .

  • Android Android Software Development Kit (SDK), Java, Android Development Tools Eclipse, Android Studio.

    - . , , - Android, . , . , . . www.deitel.com/books/AndroidFP2/. - .

    Android Android- - . Android 2008 . , Strategy Analytics, 2013 Android 81,3% , Apple iPhone 13,4%, Microsoft 4,1%, BlackBerry 1%1. IDC, 2013 Android 56,5% , 39,6% Apple iPad 3,7% Microsoft Windows2.

    Android3, 1,5 4. IDC, Samsung

    1 http://blogs.strategyanalytics.com/WSS/post/2013/10/31/Android-Captures-Record-81-Percent-Share-of-Global-Smartphone-Shipments-in-Q3-2013.aspx

    2 http://www.idc.com/getdoc.jsp?containerId=prUS240932133 http://www.android.com/kitkat4 http://www.technobuffalo.com/2013/04/16/google-daily-android-activations-1-5-million

  • 17

    Android; III 2013 40% .

    Google Play Android Google - . , Android, .

    - . Android Android.

    Android-, , Deitel & Associates, Inc. , , - Creative Commons Attribution 3.0 Unported License (http://creativecommons.org/licenses/by/3.0/) , - , . - , . , . - . - , [email protected].

    , Java -- , XML. Android- - XML. XML-, . , , Java, -- C#/.NET, Objective-C/Cocoa C++ ( - ), , Java - .

    Java, Android-. Java, :

  • 18

    Java for Programmers, 2/e (www.deitel.com/books/javafp2)

    Java Fundamentals: Parts I and II LiveLessons videos (www.deitel.com/books/LiveLessons)

    Java How to Program, 10/e (www.deitel.com/books/jhtp10)

    XML, :

    http://www.ibm.com/developerworks/xml/newto

    http://www.w3schools.com/xml/xml_whatis.asp

    http://www.deitel.com/articles/xml_tutorials/20060401/XMLBasics

    http://www.deitel.com/articles/xml_tutorials/20060401/XMLStructuringData

    , . 28 , - , , . , ; , , Android API, - .

    Android SDK 4.3 4.4. , - Android SDK (Software Development Kit) 4.3 4.4.

    . 5 . , , . , ; 8.

    . - Android (, . .) .

    ADT (Android Development Tools) Eclipse . (IDE) Android Development Tools (ADT), Eclipse ADT, JDK (Java Development Kit) , Android, - (, Google Play) . .

  • 19

    Android Studio. - Android. Android Studio ,

    http://www.deitel.com/books/AndroidFP2

    , . , - , . , [email protected].

    . , . , , Back, Home Recent Apps .

    . Android 4.4 KitKat : Wi-Fi , - , . .

    Android, . - Android. Android (. ), , . 1 - Android, .

    . Android, , , , .

    Google Play. 9 Google Play . , - Google Play, , . , . 9 1.

    , , - . [email protected].

    www.deitel.com/books/AndroidFP2

  • 20

    Facebook, Twitter, Google+, LinkedIn Deitel Buzz Online.

    www.deitel.com, :

    ;

    -;

    ;

    Deitel Buzz Online, , www.deitel.com/newsletter/subscribe.html;

    Dive Into Series, .

    (Barbara Deitel) Android, .

    - Pearson. 18- . (Mark L. Taub), Pearson Technology Group. -. (Kim Boedigheimer) Android , Android. , (Chuti Prasertsith) (Sandra Schroeder) . (John Fuller) Deitel Developer Series.

    (Tracy Johnson), - . . (Carole Snyder) . (Bob Engelhardt) .

    , Deitel & Associates, Inc., Android- Imerj, , iPhone for Programmers: An App-Driven Approach. .

  • 21

    Android for Programmers: An App-Driven Approach Android How to Program . -: (Paul Beusterien), Mobile Developer Solutions); . (Eric J. Bowden), Safe Driving Systems, LLC; (Tony Cantrell) (-- ); . (Ian G. Clifton), Android; (Daniel Galpin), Android Intro to Android Application Development; (Jim Hathaway), Kellogg; (Douglas Jones), -, Fullpower Technologies; (Charles Lasky), ; - (Enrique Lopez-Manas), Android , ; (Sebastian Nykopp), , Reaktor; -, Android, Mobiata; (Ronan Zero Schwarz), , OpenIntents; (Arijit Sengupta), Wright State; (Donald Smith), ; (Jesus Ubaldo), , , ; (Dawn Wick), - ; (Frank Xu), .

    , ! Android. , -, !

    . (Paul J. Deitel), Deitel & Associates, Inc., (MIT) (Information Technology). - Java Certified Programmer, Java Certified Developer Oracle Java Champion. Deitel & Associates, Inc. , Cisco, IBM, Siemens, Sun Microsystems, Dell, Fidelity, NASA ( ), , -, Rogue Wave Software, Boeing, SunGard Higher Education, Stratus, Cambridge Technology Partners, One Wave, Hyperion Software, Adra Systems, Entergy, CableData Systems, Nortel Networks, Puma, iRobot, Invensys . , -

  • 22

    . , , -, .

    . (Dr. Harvey M. Deitel), Deitel & Associates, Inc., 50- . - . 1960- , - IBM, Advanced Computer Techniques Computer Usage Corporation, 1970- . . 1991 . Deitel & Associates, Inc. LiveLessons. , , , , , , -, , , , , . -, , .

    (Abbey Deitel), Deitel & Associates, Inc., Tepper - . Deitel & Associates, Inc. 16 . Deitel & Associates Android for Programmers: An App-Driven Approach, 2/e, iPhone for Programmers: An App-Driven Approach, Internet & World Wide Web How to Program, 5/e, Visual Basic 2012 How to Program, 6/e Simply Visual Basic 2010, 5/e.

  • , . Android . ,

    http://www.deitel.com/books/AndroidFP2/

    , .

    Android Windows, Linux Mac OS X.

    http://developer.android.com/sdk/requirements.html

    ( SYSTEM REQUIREMENTS). , - , :

    Java SE 7 Software Development Kit;

    Android SDK/ADT Bundle Eclipse;

    Android SDK, 4.3 4.4.

    , , .

    JavaDevelopmentKit(JDK) Android- Java Development Kit ( JDK) 7 (JDK 7) 6 (JDK 6). JDK 7. JDK Windows, OS X Linux,

    http://www.oracle.com/technetwork/java/javase/downloads/index.html

  • 24

    JDK. 32- 64- . 64- . 32- , 32- JDK. -

    http://docs.oracle.com/javase/7/docs/webnotes/install/index.html

    Google - Android.

    Android SDK/ADT Eclipse - Android Software Development Kit (SDK) Android Development Tools (ADT). Android SDK 4.4 ADT 22.3.

    Android Studio Android IntelliJ IDEA; , .

    Android SDK/ADT Android . Android Studio, 2013 , - . Android SDK/ADT.

    Android SDK/ADT Android SDK/ADT,

    http://developer.android.com/sdk/index.html

    DownloadtheSDKADTBundle. , - ZIP- . eclipse Eclipse sdk Android SDK. JDK, 32- 64- . 32- Android SDK/ADT 32- JDK, 64- 64- 64-bit JDK.

    Android Studio , , Android SDK/ADT. Android Studio. Android Studio,

    http://developer.android.com/sdk/installing/studio.html

    DownloadAndroidStudio. , - . [:

  • 25

    Android 4.4 Android Studio Java SE 7, , catch, String - switch try .]

    Java Android Java SE 7. , Eclipse , Java SE 6. .

    1. Eclipse ( ) eclipse , Android SDK/ADT.

    2. WorkspaceLauncher, OK.

    3. WindowPreferences, Preferences. Mac OS X ADTPreferences

    4. Java Compiler. JDKCompliance - (Compilercompliancelevel) 1.6 ( , Eclipse , Java SE 6).

    5. GeneralEditors TextEditors. , Showlinenumbers . OK.

    6. Eclipse.

    Android4.3SDK Android SDK 4.3 4.4. - 4.4 Android SDK/ADT Android Studio. Android 4.3 ( - , ). Android, ( 1 2, Eclipse ).

    1. Eclipse. .

    2. WorkspaceLauncher, OK.

    3. Mac OS X Could not find SDK folder /Users/YourAccount/android-sdk-macosx/, OpenPreferences, Browse - sdk , Android SDK/ADT.

    4. WindowAndroidSDKManager; AndroidSDKManager (. 0.1).

  • 26

    . 0.1.AndroidSDKManager

    5. Name , - (, API Google , Maps), . Installed. Packages Tools, Android4.4(API19), Android4.3(API18) Extras, , , Install#packages (# ), ChoosePackagestoInstall. Extras . Android Support Library Google Play. Google USB Driver Windows, Android.

    6. ChoosePackagestoInstall . , AcceptLicense Install. AndroidSDKManager.

    Android(AVD)Android Android, Android SDK, - Android , Android. , - Android, , , . - (developer.android.com/tools/devices/emulator.html#acceleration).

  • Android(AVD)Android 27

    , Android Virtual Device (AVD). , : ( ), , , SD, - , . Android, AVD . AVF Android ( Nexus 4, Nexus 7 Nexus 10) Android. AVD, .

    1. Eclipse.

    2. WindowAndroidVirtualDeviceManager. AndroidVirtualDeviceManager DeviceDefinitions (. 0.2).

    . 0.2.AndroidVirtualDeviceManager

    3. Google , AVD. Nexus4byGoogle CreateAVD, CreatenewAndroidVirtualDevice(AVD) (. 0.3). , , OK, AVD. Hardwarekeyboardpresent, , AVD, . , Emulated FrontCamera BackCamera. AVD , config.ini. , ;

    http://developer.android.com/tools/devices/managing-avds.html

  • 28

    . 0.3.AVDNexus4Android4.3

    4. AVD Android 4.3, - Nexus 7 Nexus 10, . . 0.4. AVD Android 4.4 Nexus 4, Nexus 7 Nexus 10, - : AVD_for_Nexus_4_KitKat, AVD_for_Nexus_7_KitKat AVD_for_Nexus_10_KitKat.

    Android , AVD . Android, -. , . , Android,

    http://developer.android.com/tools/device.html

  • Android(AVD)Android 29

    . 0.4.AVDNexus7Nexus10

    Microsoft Windows, Windows USB Android. USB-, . USB-, ,

    http://developer.android.com/tools/extras/oem-usb.html

    , ,

    http://www.deitel.com/books/AndroidFP2/

    -, www.deitel.com Register. . , .

  • 30

    . deitel.com , . deitel.com, . , , - Deitel Buzz Online

    www.deitel.com/newsletter/subscribe.html

    www.deitel.com , Login . http://www.deitel.com/books/AndroidFP2/. Examples, Zip- . , - . , .

    AndroidGoogle Android. - , . Eclipse Android Studio , , - -. , [email protected] :

    Facebook facebook.com/DeitelFan

    Google+ google.com/+DeitelFan

    .

    , , - Android- . !

  • 1 Android

    AndroidAndroidSDK

    GooglePlayStore

    Android,Android

    ,Android,AndroidSDK,JavaSDK,-EclipseAndroidStudio

    Android

    AndroidEclipse

    Android

  • 32 1 Android

    1.1.

    Android! , Android . . 2- , .

    Java. , , Java, - (C#/, Objective-C/Cocoa C++ ), , Java - Java Android.

    - Android, . . Eclipse ( ), Java Android SDK (Software Development Kit), . , Eclipse. . - -. , , . , , - www.deitel.com/books/AndroidFP2/.

    , - Eclipse, Android Studio. Android Studio , Android Studio . .

    1.2.Android

    Android Android.

    Android 2008 . 2013 Strategy Analytics , Android

  • 1.3.Android 33

    81,3% 13,4% Apple, 4,1% Microsoft 1% Blackberry.1

    IDC, 2013 Android - 56,5% 39,6% Apple iPad 3,7% Microsoft Windows.2

    2013 1,5 Android ( , . .).3

    - Android-.4

    Android , , , , , NASA, , , , , , , ( , GPS, -, . .) .5

    1.3.Android Android . - Android . - Android , . Android. - (http://source.android.com/source/report-bugs.html) Open Source Project (http://source.android.com/community/index.html). Android , Google (. 1.1). . 1.2 , Android, , , .

    1 http://blogs.strategyanalytics.com/WSS/post/2013/10/31/Android-Captures-Record-81-Percent-Share-of-Global-Smartphone-Shipments-in-Q3-2013.aspx

    2 http://www.idc.com/getdoc.jsp?containerId=prUS240932133 http://www.technobuffalo.com/2013/04/16/google-daily-android-activations-1-5-million4 http://venturebeat.com/2013/09/03/android-hits-1b-activations-and-will-be-called-kitkat-in-next-version

    5 http://www.businessweek.com/articles/2013-05-29/behind-the-internet-of-things-is-android-and-its-everywhere

  • 34 1 Android

    1.1.Android

    URL

    http://en.wikipedia.org/wiki/List_of_open_source_Android_applications

    -,(,.)

    http://developer.android.com/tools/samples/index.html

    GoogleAndroid;60(,,--)

    http://github.com/ GitHub,-

    http://sourceforge.net SourceForge,-

    http://f-droid.org/ -Android,-AdblockPlus,aMetro,AnySoftKeyboard(-),Apollo,,-DroidWeight,EarthLiveWallpaper

    http://blog.interstellr.com/post/39321551640/14-great-android-apps-that-are-also-open-source

    14Android,-,

    http://www.openintents.org/en/libraries

    100,-

    http://www.androidviews.net -,

    http://www.stackoverflow.com StackOverflow-.,

    1.2.Android

    URL

    Android http://source.android.com/source/downloading.html

    GovernancePhilosophy http://source.android.com/about/philosophy.html

    http://source.android.com/source/licenses.html

    FAQ http://source.android.com/source/faqs.html

  • 1.3.Android 35

    . iOS Apple, Apple, Android (OEM, Original Equipment Manufacturer) . , .

    Java Android Java . Java - Android, , , . Java Android-, Google Android API (Application Programming Interface) .

    Java -, , . , , . , Eclipse Android Studio, - , , , . , - Android.

    Android , -, MP3-, , - . - . , , , - . . - , ( Android ).

    , . 1.3.

    Android , ,

  • 36 1 Android

    1.3.,Android

    ,

    -,GoogleMaps-.-

    --

    .

    ,-,-

    (-,).--

    -

    -

    ,-

    ( )

    . (Phone), (People), (EMail), (Browser), (Camera) .

    -- (web services) , - , ( ) . - (mashups), - -, , . , 100 Destinations (www.100destinations.co.uk) Google Maps, .

    Programmableweb (http://www.programmableweb.com/) 9400 API 7000 , . . 1.4 -. Programmableweb, API Google Maps, Twitter YouTube. 4 - Twitter.

  • 1.4.Android 37

    1.4.-(www.programmableweb.com/apis/directory/1?sort=mashups)

    -

    GoogleMaps

    Twitter

    YouTube

    Facebook

    Instagram

    Foursquare

    LinkedIn -

    Groupon

    Netflix

    eBay -

    Wikipedia

    PayPal

    Last.fm -

    AmazoneCommerce

    Salesforce.com

    Skype -

    MicrosoftBing Bing

    Flickr

    Zillow

    YahooSearch Yahoo!

    WeatherBug

    1.4.Android Android Android, Inc., 2005 Google. 2007 Open Handset Alliance, 84 (http://www.openhandsetalliance.com/oha_members.html). , Android, - , Android .

    Android Android , - (. 1.5).

  • 38 1 Android

    1.5.Android

    Android

    Android1.5 Cupcake

    Android1.6 Donut

    Android2.02.1 clair

    Android2.2 Froyo

    Android2.3 Gingerbread

    Android3.03.2 Honeycomb

    Android4.0 IceCreamSandwich

    Android4.14.3 JellyBean

    Android4.4 KitKat

    1.4.1.Android2.2(Froyo) Android 2.2, Froyo ( ), 2010 . , ( - Android). C2DM (Android Cloud to Device Messaging, ) , () , , . - . , . Android C2DM , Android, . , - 1. - C2DM Google Cloud Messaging.

    Android 2.2 OpenGL ES 2.0, . .

    http://developer.android.com/about/versions/android-2.2-highlights.html

    1 http://code.google.com/android/c2dm/

  • 1.4.Android 39

    1.4.2.Android2.3(Gingerbread) Android 2.3 Gingerbread ( ), 2010 , , , - . (, , - ), ( API ) ( , - ).

    Android 2.3 NFC (Near-Field Communication) , -, . NFC . NFC - (, Android NFS ), (, . .), . .

    Android 2.3

    http://developer.android.com/about/versions/android-2.3-highlights.html

    1.4.3.Android3.03.2(Honeycomb) Android 3.0 Honeycomb ( ) , ( ): , , . Android 3.0:

    , , ;

    , - ;

    -, , ;

    Holo, ;

    ;

  • 40 1 Android

    -;

    Bluetooth (, - , . .);

    .

    Android 3.0 , -

    http://developer.android.com/about/versions/android-3.0-highlights.html

    1.4.4.AndroidIceCreamSandwich Android 4.0 Ice Cream Sandwich ( ), 2011 , Android 2.3 (Gingerbread) Android 3.0 (Honeycomb) , Android. Android , - Honeycomb ( , . .), . , - . Ice Cream Sandwich API , (, ), . . (. 1.6). API Android 4.0

    http://developer.android.com/about/versions/android-4.0.html

    1.6.AndroidIceCreamSandwich (http://developer.android.com/about/versions/android-4.0.html)

    Facedetection() ,.,,-

    Virtualcameraoperator ()

    AndroidBeam Android Beam(,,)-Android

  • 1.4.Android 41

    Wi-FiDirect Wi-FiP2P(Peer-to-Peer)API--FiP2P(Peer-to-Peer)API-FiP2P(Peer-to-Peer)API-P2P(Peer-to-Peer)API-P2P(Peer-to-Peer)API-2P(Peer-to-Peer)API-P(Peer-to-Peer)API-(Peer-to-Peer)API-Peer-to-Peer)API--to-Peer)API-to-Peer)API--Peer)API-Peer)API-)API-API--AndroidWi-Fi.,Bluetooth

    SocialAPI -()

    CalendarAPI ,,,-..

    AccessibilityAPI API-API---(..).Explore-by-touch-Explore-by-touch--by-touch-by-touch--touch-touch--

    Android@Homeframework(--Android@Home)

    Android,:,,..

    BluetoothHealthDevices ,-Blue-Blue-tooth:,..

    1.4.5.Android4.14.3(JellyBean) Android Jelly Bean ( ), 2012 , , -, (, ) (. 1.7). Jelly Bean

    http://developer.android.com/about/versions/jelly-bean.html

    1.7.AndroidJellyBean (http://developer.android.com/about/versions/jelly-bean.html)

    AndroidBeam AndroidBeam-AndroidBeam-Beam-Beam--Bluetooth-Bluetooth--

  • 42 1 Android

    ,-,,

    PhotoSphere API--,,Google Maps Street View

    Daydreams ,--.Daydreams,-,-

    ,(,,-..)

    ,-,-

    1.4.6.Android4.4(KitKat)

    Android 4.4 KitKat, 2013 , -, - Android, , .1

    KitKat Android . , - , .

    Android KitKat , , - . . . 1.8 KitKat.

    http://developer.android.com/about/versions/kitkat.html

    1 http://techcrunch.com/2013/10/31/android-4-4-kitkat-google/

    1.7()

  • 1.5.GooglePlay 43

    1.8.AndroidKitKat (http://developer.android.com/about/versions/kitkat.html)

    (Immersivemode)

    ,.,,(Back,Home Recent Apps)

    ,Wi-Fi,

    ,,(-,)

    SMS SMS(ShortMessageService) MMS (MultimediaMessagingService)-------- SMS API.

    -

    Captioning Manager API(,..)

    ChromiumWebView -,HTML5,CSS3JavaScript

    ,,-,,-

    HostCardEmulator(HCE) HCENFC(,-NFC(,-(,-)SIM-

    1.5.GooglePlay Google Play , .1 - PlayStore, .

    1 en.wikipedia.org/wiki/Google_Play

  • 44 1 Android

    Google Play : http://play.google.com , Android, . WiFi 3G/4G. 9 , ( ), . .

    1.9.Android-GooglePlay

    Kindle,Wikipedia,AudibleforAndroid,GooglePlayBooks

    OfficeSuitePro7,JobSearch,SquareRegister,GoToMeeting

    ComicRack,MemedroidPro,MarvelComics,ComicStrips

    FacebookMessenger,Skype,GrooVeIP

    Duolingo:LearnLanguagesFree,TED,MobileObservatory

    SketchBookMobile,Netflix,FandangoMovies,iFunny:)

    Mint.comPersonalFinance,GoogleWallet,PayPal

    : MinecraftPocketEdition,FruitNinja,AngryBirds

    : WheresMyWater?,DrawSomething,CanYouEscape

    : Solitaire,SlotsDelux,UNO&Friends,DHTexasPoker

    : CandyCrushSaga,HardestGameEver2,GameDevStory

    RunKeeper,CalorieCounter,WorkoutTrainer,WebMD

    ZillowRealEstate,EpicuriousRecipeApp,FamilyLocator

    PicsArt,GOLauncherEX,BeautifulWidgetsPro

    MXPlayer,YouTube,KeepSafeVault,RealPlayer

    Epocrates,ICE:InCaseofEmergency,Medscape

    Pandora,Shazam,Spotify,UltimateGuitarTabs&Chords

    Flipboard,PulseNews,CNN,Engadget,Drippler

    BeautifulWidgetsPro,Zedge,GOLauncherEX

    CameraZOOMFX,PhotoGrid,InstaPicFrameforInstagram

    AdobeReader,Dropbox,GoogleKeep,SwiftKeyKeyboard

    eBay,AmazonMobile,Groupon,TheCouponsApp

    Facebook,Instagram,Vine,Twitter,Snapchat,Pinterest

    SportsCenterforAndroid,NFL13,TeamStream

    TitaniumBackupPRO,GoogleTranslate,TinyFlashlight

    Uber,Trapster,Lyft,Hailo,UlysseSpeedometer

    Waze,GasBuddy,KAYAK,TripAdvisor,OpenTable

    WeatherBug,AccuWeather,TheWeatherChannel

    Zillow,DailyHoroscope,Starbucks,FamilyLocator

  • 1.6. 45

    1.6. Android , . Android, Java Google. Android, . Android-, Android (http://developer.android.com/design/index.html). . 1.10 , . Android - developer.android.com/reference/packages.html.

    1.10.AndroidJava,,,

    android.app Android(TipCalculator3)

    android.content (-Cannon Game6)

    android.content.res ,-(,,,),-,(Flag Quiz5)

    android.database ,(Address Book8)

    android.database.sqlite SQLite(Address Book8)

    android.graphics ,(Flag Quiz5Doodlz 7)

    android.hardware (Doodlz7)

    android.media ,(Cannon Game6)

    android.net c(TwitterSearches 4)

    android.os (Tip Calculator 3)

    android.preference (Flag Quiz5)

    android.provider Android(Doodlz 7)

  • 46 1 Android

    android.support.v4.print AndroidSupportLibrary-AndroidSupportLibrary-SupportLibrary-SupportLibrary-Library-Library--Android4.4(Doodlz7)

    android.text (-TipCalculator3)

    android.util XML(-CannonGame6)

    android.widget ,-(TipCalculator3)

    android.view , (FavoriteTwitterSearches4)

    java.io ,(FlagQuiz5)

    java.text (TwitterSearches4)

    java.util (TwitterSearches4)

    android.graphics.drawable ,-(,)(FlagQuiz5)

    1.7.AndroidSoftwareDevelopmentKit(SDK) Android SDK , Android-. - Android Developers ( ). , Android-, Java SE, Android SDK/ADT ( Eclipse) Android Studio IDE.

    Android SDK/ADT Android SDK/ADT ( Eclipse) - Android-. Android- . Eclipse :

    ;

    ( );

    ;

    1.10()

  • 1.7.AndroidSoftwareDevelopmentKit(SDK) 47

    ;

    .

    Eclipse 1.9 Doodlz. - 2, Welcome, Eclipse .

    Android StudioAndroid Studio, Android - JetBrains IntelliJ IDEA (http://www.jetbrains.com/idea/), 2013 . Google Android- . Android Studio - . Eclipse, Android Studio:

    http://www.deitel.com/books/AndroidFP2

    Android Studio, Eclipse,

    http://developer.android.com/sdk/installing/studio.html

    Android Development Tools (ADT) Eclipse ADT (Android Development Tools, Android-, Android SDK/ADT) Eclipse - Eclipse. , Android, (, Google Play) . ADT - . ADT 2.

    Android Android, Android SDK, Android Windows, Mac OS X Linux. Android. , Android . , Google Play Android-.

    AVD (Android Virtual Device, Android). - Android, : , , , .

  • 48 1 Android

    Android, AVD (, testdroid.com appthwack.com), .

    , Android. Android (. 1.11) (. 1.12), - . , - , Android. , GPS- , , GPS. ( / ), ( ) , . Sensor Simulator, AVD :

    https://code.google.com/p/openintents/wiki/SensorSimulator

    1.11.Android

    (TipCalculator3)

    (CannonGame6)

    ,(CannonGame6)

    ,,-,-(AddressBook8)

    Ctrl.,-.-,,-,

    1.12.Android ( http://developer.android.com/tools/help/emulator.html)

    Android

    Back() Esc

    / F3

    Ctrl-KEYPAD_5,Ctrl-F3

  • 1.8.- 49

    Android

    F4

    Home() Homebutton

    () F2orPageUpbutton

    F7

    F5

    *() Shift-F2orPageDownbutton

    KEYPAD_7,Ctrl-F11

    KEYPAD_9,Ctrl-F12

    / F8

    KEYPAD_PLUS,Ctrl-F5

    KEYPAD_MINUS,Ctrl-F6

    . 1.13 Android, -. , Android . AVD Android- Welcome 2.

    1.13.Android, (http://developer.android.com/tools/devices/emulator.html)

    Android,

    ()

    Bluetooth

    USB

    /SD-

    (,,,,)

    1.8.- Android - -, . .

  • 50 1 Android

    - , , -. ( , 3, , ) . , , , , . - (, , ) (, , ). , - - . -- .

    1.8.1. , . , - , . , ? , - . , . , . - , , , , . , , .

    , , , . - , . , - , ( !), , .

    1.8.2. - . , , . , - , .

  • 1.8.- 51

    , , , . , , , , , , . , , .

    1.8.3. , , , . . .

    1.8.4. , . - . , , . - , - , .

    1.8.5. , ( ). . , - . , deposit , .

    1.8.6. , , , , . , (

  • 52 1 Android

    ). . - . , , , .

    , , , - . - . , bankaccount , . bankaccount , . .

    1.8.7.

    ( ). , , . .

    1.8.8.

    . , . - , . , -, .

    1.8.9.-

    , ? - , , , . , , , , , - ? 1000 , ? .

  • 1.9.DoodlzAVD 53

    , - ( , ) , ( , ). ( ). - , , - - (). , Java, -. , - - (), - .

    1.9.DoodlzAVD - Android. Doodlz , . - 7.

    , - Eclipse (AVD) Nexus 4 (c AVD , ). , Android. - AVD, ; .

    Android SDK/ADT Android Studio

    , , , Windows 7, Java SE 7 SDK Android SDK/ADT (. ). Android Studio , Android Studio :

    www.deitel.com/books/AndroidFP2

    , - Google. Android SDK/ADT Android Studio Android, AVD, .

  • 54 1 Android

    1.9.1.DoodlzAVDNexus4 Doodlz, .

    1. . , , , .

    2. Eclipse. eclipse , Android SDK/ADT, Eclipse ( - ).

    3. . WorkspaceLauncher, , , - OK. workspace . (workspace) , -, . , , Eclipse. , Android-, Java- -, . Eclipse , Welcome!, . 1.1.

    . 1.1.Welcome!Eclipse

    4. Nexus 4 AVD. - Nexus 4, Android 4.4 (KitKat) ; 1.9.2 , AVD . AVD ,

  • 1.9.DoodlzAVD 55

    - . Nexus 4 AVD, WindowAndroidVirtualDeviceManager; AndroidVirtualDeviceManager (. 1.2). Nexus 4 AVD Android KitKat Start, Launch LaunchOptions. AVD. AVD (. 1.3), AVD, .

    . 1.2.AndroidVirtualDeviceManager

    . 1.3.Nexus4AVD(Android4.4)AVD

  • 56 1 Android

    5. Doodlz. FileImport, Import (. 1.4, ). General, - ExistingProjectsintoWorkspace Next>, ImportProjects (. 1.4, ). Browse Selectroot

    . 1.4.:

    Import;ImportProjects

  • 1.9.DoodlzAVD 57

    directory. BrowseForFolder Doodlz, - , Open. Finish, Eclipse. PackageExplorer Eclipse (. 1.5). PackageExplorer , WindowShowViewPackageExplorer.

    . 1.5.PackageExplorer

    6. Doodlz. Eclipse Doodlz PackageExplorer RunAsAndroidApplication(. 1.6). Doodlz , 4 (. 1.7).

    7. AVD . AVD - , . ( AVD)

    . 1.6.Doodlz

  • 58 1 Android

    . 1.7.DoodlzAndroid(AVD)

    Android. Back () , . Home () . Recent Apps ( ) . (app bar), , (COLOR LINEWIDTH . 1.7), ( ). - 7. Android 4.4 (immersive mode), . , , . , .

    8. . , , ( ) ( ). . 1.8, Nexus 4 AVD, . 1.8, Nexus 7 AVD

  • 1.9.DoodlzAVD 59

    (). COLOR, . LINEWIDTH . Eraser , . Clear , , ( ). SaveImage - . Android 4.4 Print , - PDF ( ). .

    . 1.8.Doodlz:Nexus4AVD;Nexus7AVD

    9. . , Color (. 1.9). ARGB, ( 0 255) - : - (), , . - 0 , 255 . , 0 , 255 . SeekBar, , . SeekBar, . , Red , . 1.9. SetColor, .

  • 60 1 Android

    . 1.9.

    10. . , - LINEWIDTH ; ChooseLineWidth. SeekBar, , (. 1.10). SetLineWidth, .

    . 1.10.

    11. . , , ( ) -, (. 1.11).

    12. -. , , COLOR ChooseColor. - , Green SeekBar , Red Blue - (. 1.12, ).

    13. . , LINEWIDTH. - ChooseLineWidth. SeekBar, , (. 1.12, ). , , . 12 13 , (. 1.13).

  • 1.9.DoodlzAVD 61

    . 1.11.

    . 1.12.-: -;

    14. . , . (. 1.14, ) (. 1.14, ).

  • 62 1 Android

    . 1.13.

    , , (. 1.15).

    15. . - Gallery. Save . , , - Gallery.

    16. . , Print . , PDF. , SaveasPDF . , , Google Cloud Print .

    http://www.google.com/cloudprint/learn/

    17. . AVD, Home ( ) AVD. Gallery, , AVD. Gallery .

  • 1.9.DoodlzAVD 63

    . 1.14.:;

    . 1.15.

  • 64 1 Android

    1.9.2.DoodlzAppAVD AVD, AVD, 4 1.9.1, Nexus 4 AVD Nexus 7 AVD. Doodlz Eclipse PackageExplorer RunAsAndroidApplication. AVD, AndroidDeviceChooser (. 1.16), AVD . AVD Nexus 4 Nexus 7, - Android . Nexus 7 AVD OK. ( ) . - AVD ( ), ( ). . 1.17 Nexus 7 AVD. AVD - , AVD Ctrl+F12 ( Mac fn+control+F12). Ctrl Control.

    . 1.16.AndroidDeviceChooser

    1.9.3.DoodlzAndroid Android, - .

    1. . . Settings,

  • 1.9.DoodlzAVD 65

    . 1.17.Nexus7AVD

    , AboutPhone ( AboutTablet), BuildNumber ( ) , Youarenowadeveloper. Settings DeveloperOptions.

    2. . Settings, DeveloperOptions , USBdebugging .

    3. . USB, . Windows, , , USB . :

    developer.android.com/tools/device.html

    developer.android.com/tools/extras/oem-usb.html

    4. Doodlz Android. Eclipse PackageExplorer, Doodlz RunAsAndroidApplication. AVD, Android, . AVD / -, AndroidDeviceChooser (. 1.16). AVD .

  • 66 1 Android

    , Google Play , . , . , AVD, , . - , AVD. config.ini AVD, Setting hardware emulation options

    developer.android.com/guide/developing/tools/avd.html

    config.ini , Android Virtual Device Manager. Android .

    1.10.Android- Google Play 800 000 .1 Android, , , - ? , , , . , Google Play Android. , ? . 1.14 .

    1.14.

    1 http://www.pureoxygenmobile.com/how-many-apps-in-each-app-store/

  • 1.10.Android- 67

    /

    ,;

    (,..)

    (,,,..)

    (,,..)

    Android,Android

    Android

    ,

    ()

    ,Google Play

    ,,

    (-)

    (http://developer.android.com/guide/topics/ui/accessibility/index.html)

    (,Facebook Twitter)

  • 68 1 Android

    ,(,,..)

    (.2),(,,..)

    ,-

    Android

    -,,Google Play (http://android-developers.blogspot.com/2010/06/future-proofing-your-app.html)

    1.11. . 1.15 Android Developer. Android- , , . . - Android, (. 1.16). . 1.17 , , Android.

    1.15.Android-

    URL

    http://developer.android.com/guide/components/index.html

    Android

    http://developer.android.com/tools/devices/emulator.html

    http://developer.android.com/reference/packages.html

    http://developer.android.com/reference/classes.html

    http://developer.android.com/design/index.html

    http://developer.android.com/guide/topics/data/backup.html

    http://developer.android.com/training/articles/security-tips.html

    EclipseADT

    http://developer.android.com/guide/developing/projects/projects-eclipse.html

    1.14()

  • 1.11. 69

    URL

    Android Studio http://developer.android.com/sdk/installing/studio.html

    http://developer.android.com/tools/debugging/index.html

    http://developer.android.com/tools/help/index.html

    -

    http://developer.android.com/training/articles/perf-tips.html

    -

    http://developer.android.com/training/articles/perf-anr.html

    -(Google Play)

    http://developer.android.com/distribute/googleplay/publish/preparing.html

    http://developer.android.com/distribute/googleplay/publish/register.html

    http://developer.android.com/training/articles/memory.html

    -GooglePlay-Play-Play--

    http://play.google.com/about/developer-distribution-agreement.html

    1.16.Android

    AndroidDiscuss GoogleGroups:android-discuss:[email protected]

    -Android,-

    StackOverflow http://stackoverflow.com/questions/tagged/android

    Android,Java Eclipse,-Eclipse,-,-

    AndroidDevelopers http://groups.google.com/forum/?fromgroups#!forum/android-developers

    ,-,..

    Android Forums http://www.androidforums.com

    ,-Android

  • 70 1 Android

    1.17.Android

    , , URL

    Android- Google

    http://code.google.com/p/apps-for-android/

    -Android-(OReilly)

    http://answers.oreilly.com/topic/862-ten-tips-for-android-application-development/

    BrightHub-BrightHub-Hub-Hub--Android-

    http://www.brighthub.com/mobile/google-android.aspx

    TheAndroidDevelopersBlog http://android-developers.blogspot.com/

    TheSprintApplicationDevelopersProgram

    http://developer.sprint.com/site/global/develop/mo-bile_platforms/android/android.jsp

    HTCsDeveloperCenterforAndroid http://www.htcdev.com/

    Android--Android----Motorola

    http://developer.motorola.com/

    TopAndroidUsersonStackOver-flow

    http://stackoverflow.com/tags/android/topusers

    AndroidDevWeeklyNewsletter http://androiddevweekly.com/

    Codependent( ) http://graphics-geek.blogspot.com/

    http://cyrilmottier.com/

    http://www.curious-creature.org/category/android/

    Android-YouTube

    http://www.youtube.com/user/androiddevelopers

    -Android

    http://developer.android.com/develop/index.html

    Android-

    http://www.youtube.com/watch?v=lmv1dTnhLH4

    GoogleI/O2013DeveloperConference

    http://developers.google.com/events/io/sessions

    1.12. Android . - , ,

  • 1.12. 71

    . Android Market Google Play , . Java, Android Google, Android-; . Java Android SDK, Android, Android . , , , . Doodlz Android. 2 Android-, . . Android-.

  • 2 Welcome

    Android- (EclipseADT), , Android-

    ()

    Android

    , AndroidTalkBackExplore-by-Touch

    ,

  • 2.1. 73

    2.1. Welcome. , . ADT , Android. , , , . Android- (. 2.1) , . , Android ( Android, ). , , , . http://www.deitel.com/books/AndroidFP2 Android Studio. , -, 1.9.

    . 2.1.WelcomeAndroid

  • 74 2 Welcome

    2.2. , .

    2.2.1.AndroidDeveloperToolsIDE Android Developer Tools (ADT). (. 2.3). , Hello world!. (. 2.5).

    2.2.2.TextViewImageView TextView, - ImageView. , - , TextView, , , . . (. 2.5.3). ImageView (. 2.5.4).

    2.2.3. , res . 2.5.3 , (, TextView) (, ). - Android TextView.

    2.2.4.Android , - . , TalkBack , ( , ) . Android Explore by Touch , TalkBack . 2.7 , .

  • 2.3. 75

    2.2.5. Android . , , . 2.8 , Welcome TextView ImageView AVD, - .

    2.3. Android Developer Tools (22.x) Android SDK (4.3 4.4), . -, Java SE Development Kit (JDK) Android Developer Tools, 1.9. , IDE, IDE .

    2.3.1. AndroidDeveloperTools IDE, eclipse Android SDK/ADT Eclipse icon ( , ).

    Welcome (. . 2.1). , HelpAndroidIDE.

    2.3.2. (, ), . . NewAndroidApplication Welcome, - NewAndroidApplication (. 2.2). : FileNewAndroidApplicationProject New ( ) AndroidApplicationProject.

    2.3.3.NewAndroidApplication NewAndroidApplication (. 2.2), Next>:

  • 76 2 Welcome

    1. ApplicationName: . Welcome.

    . 2.2.NewAndroidApplication

    2. ProjectName: , PackageExplorer IDE. IDE , , , Address Book - AddressBook. , ProjectName:.

    3. PackageName: Java . Android - Google Play , -. , . , - deitel.com, com.deitel. . . IDE , com.example, - , .

  • 2.3. 77

    4. MinimumRequiredSDK: Android API, . API . 18, - Android 4.3 , . . 2.1 Android SDK API. SDK . Android, - ,

    http://developer.android.com/about/dashboards/index.html

    2.1.AndroidSDKAPI (http://developer.android.com/about/dashboards/index.html)

    SDK API

    4.4 19

    4.3 18

    4.2.x 17

    4.1.x 16

    4.0.3-4.0.4 15

    4.0.1 14

    3.2 13

    2.3.3-2.3.7 10

    2.2 8

    2.1 7

    1.6 4

    5. TargetSDK: API. - 19 (Android 4.4). 26% Android 10. . , Android 2.3.3 (98% Android), MinimumRequiredSDK 10. API, TargetSDK, , API MinimumRequiredSDK API . Android Lint, IDE , .

    6. CompileWith: API, . TargetSDK, API, .

  • 78 2 Welcome

    7. Theme: , Android. HoloLight, HoloDark HoloLightwithDarkActionBars ( IDE ). Holo Light Holo Dark. , - . :

    http://developer.android.com/design/style/themes.html

    2.3.4.ConfigureProject NewAndroidApplication ConfigureProject (. 2.3) - Next>. (Activity) , .

    . 2.3.NewAndroidApplication(2)

    2.3.5.ConfigureLauncherIcon , - ,

  • 2.3. 79

    . Android - . , , . Android - , ( ) (DPI, dots per inch). 3. -

    http://developer.android.com/training/multiscreen/index.html

    http://developer.android.com/design/style/iconography.html

    ConfigureLauncherIcon (. 2.4) - , . , 4848, 7272, 9696 144144 . DeitelOrange.png. , Browse ImageFile:, images ,

    . 2.4.NewAndroidApplication(3)

  • 80 2 Welcome

    DeitelOrange.png Open. Preview . . - . , Google Play, . 9 Google Play , ( ). Next>, .

    2.3.6.CreateActivity Create Activity (. 2.5) (Activity) -. , - . . 2.2 , . 2.5. Blank Activity Next>. .

    . 2.5.NewAndroidApplication(4)

  • 2.3. 81

    2.2.Activity

    BlankActivity ,-.,,-

    FullscreenActivity (Blank Activity),,-

    Master/DetailFlow ,-(-(-(-EmailPeople)..,

    2.3.7.BlankActivity (. 2.6) . BlankActivity :

    Activity Name ( IDE MainActivity). Activity, . 3 .

    Layout Name ( IDE activity_main.xml). XML. ( 2.5) .

    NavigationType ( IDE None). Welcome . -, , . .

    Finish, .

  • 82 2 Welcome

    . 2.6.NewAndroidApplication(5)

    2.4.AndroidDeveloperTools IDE MainActivity.java activity_main.xml. MainActivity.java, IDE , . 2.7. IDE . , Welcome. IDE - .

    2.4.1.PackageExplorer PackageExplorer . . 2.8 Welcome PackageExplorer. Welcome - . IDE . - . res, 2.4.4; , .

  • 2.4.AndroidDeveloperTools 83

    . 2.7.WelcomeAndroidDeveloperTools

    2.4.2. PackageExplorer . 2.7 (GraphicalLayout). PackageExplorer, ( ). Java Java. XML, (, activity_main.xml), .

  • 84 2 Welcome

    . 2.8.ProjectExplorer

    2.4.3. Outline IDE (. 2.7). . , . Java , .

    2.4.4. , activity_main.xml ( res/layout), - res . . . 2.3 , - Welcome; (menu, animator, anim, color, raw xml) , .

    2.3.,

    drawable ,drawable,-drawable,-,-.XML,-XML,-,-(,,)

    layout ,layout,XML-layout,XML-,XML-XML--,activity_main.xml

  • 2.4.AndroidDeveloperTools 85

    values ,values,(arrays.xml),(colors.xml),(dimen.xml;-arrays.xml),(colors.xml),(dimen.xml;-.xml),(colors.xml),(dimen.xml;-xml),(colors.xml),(dimen.xml;-),(colors.xml),(dimen.xml;-colors.xml),(dimen.xml;-.xml),(dimen.xml;-xml),(dimen.xml;-),(dimen.xml;-dimen.xml;-.xml;-xml;-;-,,),(strings.xml)-strings.xml)-.xml)-xml)-)-(styles.xml).-styles.xml).-.xml).-xml).-).-,.,Java.,,-,Java

    2.4.5. IDE activity_main.xml (. 2.9). activity_main.xml res/layout .

    Android . Android. - , (AVD), Google Nexus 4. - , . Nexus 4, . 2.9. , Nexus 4, , Nexus 4. , , - .

    2.4.6. (. 2.9) BlankPage RelativeLayout - ( , - ) TextView "Hello world!". RelativeLayout - , RelativeLayout , , . TextView

  • 86 2 Welcome

    . - 2.5.

    . 2.9.

  • 2.5. 87

    2.5. Welcome. (GraphicalLayout) GUI, Button, TextView, ImageView . , BlankApp XML- activity_main.xml res/layout. Outline - . Android , .

    2.5.1. Deitel (bug.png) Android (android.png). images/Welcome . ( - , ) .

    Android , - (DPI, Dot Per Inch), , . res , drawable. (. 2.4).

    2.4.Android

    drawable-ldpi 120

    drawable-mdpi 160

    drawable-hdpi 240

    drawable-xhdpi 320

    drawable-xxhdpi 480

    drawable-xxxhdpi 640

    , Google Nexus 4, AVD, drawable-hdpi. - (, - ) drawable-xhdpi drawable-xxhdpi.

  • 88 2 Welcome

    Android drawable-mdpi drawable-ldpi .

    . Android drawable, - ( , ).

    2.1

    .,,-.

    2.2

    Androidhttp://developer.android.com/guide/practices/screens_support.html.

    , .

    1. PackageExplorer res .

    2. Welcome images . res/drawable-hdpi. , FileOperation CopyFiles, OK. PNG, JPG GIF .

    .

    2.5.2.IdRelativeLayoutTextView , (Properties) Outline XML. , Outline (. 2.10).

    . 2.10.

  • 2.5. 89

    , ( ). Id. , XML. -, Id RelativeLayout.

    RelativeLayout, Id

    @+id/welcomeRelativeLayout

    + @+id ( ), /. TextView Id

    @+id/welcomeTextView

    , . 2.11.

    . 2.11.IdRelativeLayoutTextView

    2.5.3.TextView Welcome - TextView, .

  • 90 2 Welcome

    Text TextView Android (http://developer.android.com/guide/topics/resources/index.html), , , , , , res , - Java- . . , - , , .

    , , . res values, strings.xml. . , values ( 2.8).

    Text TextView, strings.xml.

    1. , TextView.

    2. Text, , - . , , ResourceChooser.

    3. ResourceChooser NewString, - CreateNewAndroidString, . 2.12.

    4. String NewR.string (. . 2.12), Replacein all XMLfilefordifferentconfigurations, OK, ResourceChooser. String , TextView, R.string -, Text TextView.

    5. welcome . OK, .

    Text , . 2.13. @string , strings.xml ( res/values ), welcome .

    Text Size TextView , GUI Android - (. 2.5). , , -

    developer.android.com/guide/practices/screens_support.html

  • 2.5. 91

    GUI , , , .

    . 2.12.CreateNewAndroidString

    . 2.13.TextTextView

    2.5.

    px

    dpdip ,

    sp ,

    in

    mm

  • 92 2 Welcome

    , (dp dip), Android - . , , 160 dpi ( ). - 240 dpi , , 240/160 ( 1,5). , , - 100 , , 150 . 120 120/160 ( 0,75). , 100 75 . , - , , , , , .

    TextView TextView, . :

    1. , welcomeTextView.

    2. TextSize . , ResourceChooser.

    3. ResourceChooser NewDimension

    4. Name welcome_textsize, Value 40sp. OK, ResourceChooser. sp 40sp , , . dp (-, 10dp) , .

    welcome_textsize . OK, .

    TextView - TextView.

    TextColor @android:color/holo_blue_dark. Android . @android:color/ TextColor, (. 2.14). @android:color/holo_blue_dark, -.

    , , TextView, Gravity center. Value , ,

  • 2.5. 93

    SelectFlagValues Gravity (. 2.15). center, OK, .

    . 2.14.TextColorTextView @android:color/holo_blue_dark

    . 2.15.Gravity

    , . 2.16.

    ImageView ImageView, , 2.5.1. ImageView

  • 94 2 Welcome

    Images&Media . .

    1. Images&Media ImageView (. 2.17). ImageView welcomeTextView. , . - , - , , . . 2.17 , ImageView ( , ) - welcomeTextView ( ).

    . 2.16.TextView

    . 2.17.ImageView

    2. ResourceChooser (. 2.18), . -, drawable, IDE ( ), .

  • 2.5. 95

    , android.png android. android OK, . , .

    . 2.18.androidResourceChooser

    3. IDE Id ImageView @+id/imageView1. @+id/droidImageView. - UpdateReferences? - . Yes. RenameResource . OK, -.

    4. 13 bugImageView. - ImageView droidImageView, ResourceChooser Id @+id/bugImageView . .

    , . 2.19.

  • 96 2 Welcome

    . 2.19.

    2.6.Welcome AVD , - 1.9.1. . 2.20 Nexus 4 AVD, . ( ). AVD ( ), . , -, , .

    1.9.3, Android. AVD

  • 2.7. 97

    . 2.20.WelcomeAVD

    , . , , , , - ; , .

    2.7. Android , . - Android TalkBack ( , ), -. Explore by Touch, - , . TalkBack, , , - . Android

  • 98 2 Welcome

    . , TalkBack , TextView, TalkBack . TalkBack Settings ( Accessibility). Android , (, ). , TalkBack - AVD, , TalkBack , . - TalkBack Android TalkBack Explore by Touch.

    TalkBack ImageView Welcome TextView, TalkBack TextView. ImageView , , . Android - TalkBack ContentDescription , . IDE , ( ) ImageView. - ( Android Lint) , ContentDescription . . ImageView .

    ContentDescription ImageView ( Android Lint), .

    1. droidImageView .

    2. Content Description, ResourceChooser.

    3. NewString, CreateNewAndroidString.

    4. String "Android logo", R.string android_logo. OK.

    5. android_logo ResourceChooser. OK, Content Description droidImageView.

    6. bugImageView, CreateNewAndroidString String "Deitel doublethumbsup bug logo", R.string "deitel_logo". .

    ContentDescription ImageView ( ) ImageView.

  • 2.8. 99

    TalkBack TalkBack. - TextView ImageView .

    - . . Android - Android , :

    http://developer.android.com/design/patterns/accessibility.html

    http://developer.android.com/guide/topics/ui/accessibility/index.html

    http://developer.android.com/guide/topics/ui/accessibility/checklist.html

    2.8. , Android . - , , -. , , (, . .) . , . . -, Android , .

    ( ) , - , XML . , . Android , .

    XML- , , res . Android , values-fr strings.xml

  • 100 2 Welcome

    , values-es strings.xml . , values-en-rUS values-en-rGB strings.xml , , . , Android ( values res). - .

    Welcome strings.xml, , values-es. :

    1. PackageExplorer res NewFolder, NewFolder.

    2. Foldername: valueses. Finish.

    , , values-XX.

    strings.xml values-es strings.xml values values-es.

    :

    1. PackageExplorer values res, strings.xml Copy.

    2. values-es Paste, strings.xml.

    TextView, , ImageView , . strings.xml. strings.xml. , , - . , Google Play Developer Console ( Google Play) , .

    Google Play Developer Console 9

    developer.android.com/distribute/googleplay/publish/index.html

  • 2.8. 101

    "Welcome to Android App Development!"

    "Android logo"

    "Deitel double-thumbs-up bug logo"

    "Bienvenido al Desarrollo de App Android!""Logo de Android""El logo de Deitel que tiene el insecto con dedos pulgares hacia arriba"

    :

    1. PackageExplorer strings.xml values-es, Android. welcome (. 2.21).

    . 2.21.Androidwelcome

    2. Value "Welcome to Android App Development!" "Bienvenido al Desarrollo de App Android!". , res/values-es/strings.xml Welcome ( WelcomeInternationalized ). Value, , Paste.

    3. android_logo Value "Logo de Android".

    4. , deitel_logo Value "El logo de Deitel que tiene el insecto con dedos pulgares hacia arriba".

  • 102 2 Welcome

    5. app_name, action_settings hello_world, Remove. . strings.xml . app_name. , .

    6. strings.xml FileSave .

    , - Android ( ).

    1. Home ( ) .

    2. ( ), Settings ( ).

    3. Settings PERSONAL, Language&input.

    4. Language ( ) Espaol (Espaa).

    - Language&input, .

    Welcome IDE; - . . 2.22 , . Android AVD ( ), , AVD ( ) , welcome, android_logo deitel_logo, res/values-es/strings.xml . , . , app_name res/values-es/strings.xml. , : Android , - res/values/strings.xml.

    2.1

    .Android.,,,.

  • 2.8. 103

    . 2.22.Welcome AVDNexus4

    AVD ( ) AVD ( ) :

    1. Home ( ) .

    2. ( ), Settings ( ) Ajustes.

    3. Idiomayentradadetexto, .

    4. Idioma English(UnitedStates).

    TalkBack TalkBack , , , . Welcome TalkBack, TalkBack - .

    TalkBack, Android . TalkBack

  • 104 2 Welcome

    , , -. .

    Android Localization Checklist :

    developer.android.com/distribute/googleplay/publish/localizing.html

    2.9. Android Developer Tools IDE Welcome app, - - . .

    TextView, ImageView. TextView -, , . ImageView . , res .

    , - . , TalkBack , - . Android Explore by Touch , TalkBack . ImageView , TalkBack Explore by Touch.

    , Android , . Welcome TextView ImageView, AVD, .

    Android - Java. Tip Calculator ; , Java .

  • 3 TipCalculator GridLayout, LinearLayout, EditText, SeekBar, - , NumberFormat Java

    LinearLayoutGridLayout

    Outline GUILinearLayoutGridLayout

    TextView,EditTextSeekBar

    -Java,,,,, Android

    GUI

    EditTextSeekBar

  • 106 3 TipCalculator

    3.1. Tip Calculator (. 3.1, ) - . ( 15% ). 0% 30% ( 18%). Seekbar, , Seekbar (. 3.1, ). 18%, , . . 3.1 - Android AVD , .

    . 3.1.:;34,56

    20%

    . , .

  • 3.2.TipCalculator 107

    (GUI) (Graphical Layout editor) Android Developer Tools Outline. . 3.2 3.4 Android Studio http://www.deitel.com/books/AndroidFP2.

    3.2.TipCalculator

    Android Developer Tools Tip Calculator. .

    1. AVD - Nexus 4, . Nexus 4 AVD, WindowAndroidVirtualDeviceManager; AndroidVirtualDeviceManager. Nexus 4 AVD Start, Launch LaunchOptions.

    2. FileImport, Import.

    3. Tip Calculator. Import General, ExistingProjectsintoWorkspace Next> ImportProjects. Selectrootdirectory Browse. BrowseForFolder TipCalculator ( ), OK. , Copyprojectsintoworkspace . Finish, - . PackageExplorer.

    4. Tip Ca