MobAppDev (Fall 2013): Android AppDev Infrastructure Installation, Android App Anatomy, Building, Running, & Signing Apps
Upcoming SlideShare
Loading in...5
×
 

MobAppDev (Fall 2013): Android AppDev Infrastructure Installation, Android App Anatomy, Building, Running, & Signing Apps

on

  • 529 views

 

Statistics

Views

Total Views
529
Views on SlideShare
336
Embed Views
193

Actions

Likes
0
Downloads
0
Comments
0

22 Embeds 193

http://vkedco.blogspot.com 118
http://www.vkedco.blogspot.com 19
http://vkedco.blogspot.in 12
http://vkedco.blogspot.co.uk 6
http://vkedco.blogspot.co.il 5
http://www.vkedco.blogspot.in 5
http://reader.aol.com 4
http://vkedco.blogspot.fr 4
http://vkedco.blogspot.com.es 3
http://vkedco.blogspot.de 3
http://vkedco.blogspot.com.au 2
http://vkedco.blogspot.com.ar 2
http://www.blogger.com 1
http://vkedco.blogspot.sg 1
http://vkedco.blogspot.sk 1
http://www.vkedco.blogspot.nl 1
http://vkedco.blogspot.mx 1
http://www.vkedco.blogspot.jp 1
http://www.vkedco.blogspot.fr 1
http://vkedco.blogspot.ru 1
http://www.vkedco.blogspot.de 1
http://www.vkedco.blogspot.co.nz 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    MobAppDev (Fall 2013): Android AppDev Infrastructure Installation, Android App Anatomy, Building, Running, & Signing Apps MobAppDev (Fall 2013): Android AppDev Infrastructure Installation, Android App Anatomy, Building, Running, & Signing Apps Presentation Transcript

    • MobAppDev Android AppDev Infrastructure Installation, Android App Anatomy, Building, Running, & Signing Apps Vladimir Kulyukin Department of Computer Science Utah State University www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Outline ● Android AppDev Infrastructure: What is What and What Installs Where (Most Likely) ● Android App Anatomy: Components of an Android Application ● Building, Running, & Signing Android Apps www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • What is What & What Installs Where (Most Likely) www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android Root Directory After you install Android, your Android root directory (e.g., E:/Android/android-sdks) will likely look as follows (your particular installation may look somewhat different) www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android Root/add-ons ● /add-ons - 3rd party releases of Android; add-ons may require some licensing agreement (make sure you understand licensing before adopting an add-on) ● The most important sub-directories of an add-on are: – /images – system image files for Android devices – /libs – JAR files you need to include in your projects – /skins – available looks for Android devices – /samples – if present, contains sample projects with source code www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android Root/platforms ● /platforms – specific platforms installed on your system (e.g., android-8, android-10, etc) ● Each platform directory will have, at least, the sub- directories: /data, /images, & /skins – /data – various resources (e.g., fonts, icons, etc) – /skins – looks of devices – /images – file system images www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android Root/samples & /platform-tools ● /samples – sample projects for specific platforms ● /samples are a great way to learn Android development tricks (many of them are not well documented: you build them, run them, & study the source, modify it, etc) ● /platform-tools are applications and libraries you need for Android development – aapt (Android Asset Packaging Tool) – adb (Android Debug Bridge) – aidl (Android Interface Definition Language compiler) www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android Root/samples & /platform-tools ● /samples – sample projects for specific platforms ● /samples are a great way to learn Android development tricks (many of them are not well documented: you build them, run them, & study the source, modify it, etc) ● /platform-tools are applications and libraries you need for Android development – aapt (Android Asset Packaging Tool) – adb (Android Debug Bridge) – aidl (Android Interface Definition Language compiler) www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android Root/sources ● /sources – source code from various companies and organizations ● /tools are applications and libraries you need for running and debugging Android apps – emulator – ddms (Dalvik Debug Monitor Server) – apkbuilder (APK stands for Android Package File; APK is a file format for Android application distribution; it is actually - ZIP) – hierarchyviewer (UI debugging and opitmization tool) www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Tool Access & Versions ● Android Plugins for Eclipse make most tools available from within IDE ● If you are a command line developer, think of adding /platform-tools and /tools to your PATH ● Android APIs tend to be backward compatible (modulo hardware restrictions) but some APIs do get depricated: you have to stay current on what is current on your target Android platform www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App Anatomy www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Greeting & Toasting Gingerbread (Android 2.3.X) & Jelly Bean (Android 4.2) download source HelloGingerbread, HelloJellyBean www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Basic HelloAndroid App with a Toast www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Hello to & Toast on Gingerbread www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Hello to & Toast on Jelly Bean www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App/gen ● /gen folder contains all auto- generated Java source ● You should not modify it ● R.java is a very important class that defines constants that you need to programmatically access various elements of your application www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App/assets, /bin, /libs, /res ● /assets - arbitraty user created files or file hierarchies not available through R.java ● /bin - .dex (Dalvik byte code), .apk and drawables ● /libs JARs for required by the app ● /res – XML and drawable resources available through R.java www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App/res ● /res folder contains XML resources and drawables of various resolutions required for your app ● /res/drawable-xxxx - drawables of various resolutions ● /res/layout - XML UI specs for activities ● /res/menu – XML menu specs for activities ● /res/values – XML definitions of string constants and styles www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Pushing/Pulling Files To/From Device Open DDMS Perspective, Select Device in the left panel; click on 'Push File To Device' or 'Pull File From Device' www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App Development Process www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Building & Running Steps www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Building & Running Apps ● Eclipse ADT plugin builds your app incrementally as you make changes to it (check Project | Build Automatically menu option) ● The .apk file is saved in the /bin folder ● It is possible to develop in non-Eclipse environments: you can use the generated build.xml Ant file in the project directory ● The app must be signed (debug or release mode) to run on an AVD or a device ● Eclipse ADT automatically signs your app in debug mode www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Building & Signing Apps Building Apps Signing Apps www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App Anatomy www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App/AndroidManifest.xml ● AndroidManifest.xml is the glue that specifies & holds your app together (conceptually similar to Unix/Linux make files) ● Specifies your app's package, minimum & target SDK versions, your application and activities inside your application www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App/src ● /src folder contains all your Java source code (packages & classes) ● Initial Activity class with two methods onCreate() and onCreateOptionsMenu() is auto-generated www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App/gen ● /gen folder contains all auto- generated Java source ● You should not modify it ● R.java is a very important class that defines constants that you need to programmatically access various elements of your application www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App/assets, /bin, /libs, /res ● /assets - arbitraty user created files or file hierarchies not available through R.java ● /bin - .dex (Dalvik byte code), .apk and drawables ● /libs JARs for required by the app ● /res – XML and drawable resources available through R.java www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Android App/res ● /res folder contains XML resources and drawables of various resolutions required for your app ● /res/drawable-xxxx - drawables of various resolutions ● /res/layout - XML UI specs for activities ● /res/menu – XML menu specs for activities ● /res/values – XML definitions of string constants and styles www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Building, Running, & Signing Android Apps www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Building & Running Steps www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Building & Running Apps ● Eclipse ADT plugin builds your app incrementally as you make changes to it (check Project | Build Automatically menu option) ● The .apk file is saved in the /bin folder ● It is possible to develop in non-Eclipse environments: you can use the generated build.xml Ant file in the project directory ● The app must be signed (debug or release mode) to run on an AVD or a device ● Eclipse ADT automatically signs your app in debug mode www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • Building & Signing Apps Building Apps Signing Apps www.vkedco.blogspot.comwww.vkedco.blogspot.com
    • References ● developer.android.com ● developer.android.com/tools/building/index.html ● http://www.youtube.com/vkedco www.vkedco.blogspot.comwww.vkedco.blogspot.com