SlideShare a Scribd company logo
Slideshare.net/khirulnizam
       fb.com/khirulnizam
            blog.kerul.net




          Android Dev 101
             June 23, 2012
  Khirulnizam Abd Rahman
Agenda
   Intro
   Demo 1: New Android project
    Properties window
    Android Emulator
    DDMS - Dalvik Debug Monitor
    Demo 2: Widgets and Interactions

   Day 2 - 24-06-2013 (8.30am - 4pm)
    Demo 3: HTML and Webview
    Demo 4: Audio
   Demo 5: Video
    Signing APK
   Uploading to Google Play




    6/22/2012                http://blog.kerul.net   2
Android Devices




6/22/2012   http://blog.kerul.net   3
Android Story
     http://www.techsavys.info/2011/07/the-
      android-story-an-android-infographic-
      discussing-about-its-beginning-on-
      going-changes-and-worldwide-market-
      shares.html




6/22/2012              http://blog.kerul.net   4
Faq1: What is Android?
  Android is a software stack for mobile devices
   that includes an operating system,
   middleware and key applications (platform).
   The Android SDK provides the tools and APIs
   necessary to begin developing applications on
   the Android platform using the Java
   programming language.
  The kernel of most Android version is based
   on Linux 2.6 (3.0 for ICS).
  Android architecture;


6/22/2012           http://blog.kerul.net           5
Android Architecture




6/22/2012    http://blog.kerul.net   6
Faq2: Who develop
Android?
    Initially developed by Andrew
     (Andy) Rubin and his team in
     Android Inc.
    Google acquired Android Inc.
     in 2005.
    Now, it is developed by Google
     under Andy Rubin (Senior Vice
     President of Mobile)



6/22/2012            http://blog.kerul.net   7
Faq3: How many versions
(distributions) Android has?




6/22/2012     http://blog.kerul.net   8
     Source:
      http://developer.android.com/resources/dashb
      oard/platform-versions.html
6/22/2012               http://blog.kerul.net        9
Faq4: What is API Level?
       API Level is an integer value that uniquely
        identifies the framework API revision offered
        by a version of the Android platform.
       The Android platform provides a framework
        API that applications can use to interact with
        the underlying Android system.




6/22/2012               http://blog.kerul.net        10
Faq5: What is Android
app?
      Developer can develop application that runs
       on top of Android.
      App is actually a simpler version of
       application.
      Uses *.apk for the installer file extension.




6/22/2012              http://blog.kerul.net          11
App samples




6/22/2012     http://blog.kerul.net   12
Faq6: What is the language
used to develop Android
app?
  Java
     compiled into Dalvik Bytecode (NOTJava
      bytecode).
     Android provides Dalvik virtual machine-
      DVM inside Android (NOT Java virtual
      machine-JVM)
     Using Android API – (with some Java
      APIs).


6/22/2012             http://blog.kerul.net      13
Faq7: What is Dalvik Virtual
Machine, is it similar as JVM?
       Author - Dan Bornstein
       Dalvik VM implementing slightly different
        architecture to JVM.
       Dalvik VM is a register-based
        architecture.
       Being optimized for low memory and
        slower processing speed.
       The VM was slimmed down to use less
        space.

6/22/2012               http://blog.kerul.net       14
Faq8: What are tools needed
to develop Android App?
           Latest JDK – version 6 -
             http://www.oracle.com/technetwork/java/javase/downl
            oads/jdk-6u27-download-440405.html (not yet tested
            against JDK 7)
           Eclipse (as the IDE) -
             http://www.eclipse.org/downloads/packages/eclipse-
            ide-java-developers/indigor
           Android Development Toolkit (ADT 12) for Eclipse -
             http://developer.android.com/sdk/eclipse-adt.html
           Android SDK - http://developer.android.com/sdk/
           Installation guide - http://blog.kerul.net/2011/06/eclipse-
            helios-android-development.html
           Third parties: Titanium, PhoneGap, Unity3D



6/22/2012                         http://blog.kerul.net                   15
IDE - Eclipse




6/22/2012       http://blog.kerul.net   16
AppInventor -
appinventor.mit.edu/




6/22/2012     http://blog.kerul.net   17
Emulator




6/22/2012   http://blog.kerul.net   18
Dalvik Debugger




6/22/2012   http://blog.kerul.net   19
Faq8: Where to distribute my
App?
             market.android.com
             MobileApps.com
             GetJar.com




6/22/2012                 http://blog.kerul.net   20
6/22/2012   http://blog.kerul.net   21
6/22/2012   http://blog.kerul.net   22
Android Project Structure
     Inside Android Project, there should be;
      /src – the Java codes are here
      /gen – generated automatically
      /assets – put your fonts, videos, sounds here
      /res – images, layout and global variables
        /drawable-hdpi –for high spec phones
        /drawable-ldpi –for low spec phones
        /drawable-mdpi –for medium spec phones
        /layout – all XML file for the screen(s) layout
        /values – global constant variables

6/22/2012                 http://blog.kerul.net           23
6/22/2012   http://blog.kerul.net   24
AndroidManifest
     AndroidManifest.xml – app’s
      permissions need to be registered here
      – (eg: app can access Internet, phone
      contacts, camera, etc must be
      mentioned here)




6/22/2012              http://blog.kerul.net   25
<?xml version="1.0" encoding="utf-8"?>
      <manifest xmlns:android="http://schemas.android.com/apk/res/android"
         android:versionCode="7"
         android:versionName="1.7"
         package="net.kerul.mMathurat">

         <application android:icon="@drawable/icon" android:label="@string/app_name"
         android:taskAffinity=".mMathuratActivity">
            <activity android:name=".mMathuratActivity"
                    android:label="@string/app_name"
                    android:screenOrientation="portrait">
              <intent-filter>
                  <action android:name="android.intent.action.MAIN" />
                  <category android:name="android.intent.category.LAUNCHER" />
              </intent-filter>
            </activity>
            <activity android:name=".Aboutus" class=".Aboutus"
            android:label="Mengenai kami..." android:screenOrientation="portrait">
          </activity>
          <activity android:name=".Berterusan" class=".Berterusan"
            android:label="Mod pemanduan..." android:screenOrientation="portrait">
          </activity>
         </application>
         <uses-sdk android:minSdkVersion="7" />
         <receiver android:name=".DetectIncomingCall">
      <intent-filter>
         <action android:name="android.intent.action.PHONE_STATE" />
      </intent-filter>
      </receiver>

        <uses-permission android:name="android.permission.READ_PHONE_STATE" />
        <uses-permission android:name="android.permission.INTERNET" />
        <uses-permission android:name="android.permission.VIBRATE"></uses-permission>
      </manifest>

6/22/2012                                        http://blog.kerul.net                  26
DEMO
 Demo 0: The IDE (Eclipse + ADT)
 Demo 1: Creating a new Android Project
  (and the project structure).
 Demo 2: Widgets and interaction –
  Textbox and Button.
 Demo 3: HTML and WebView
 Demo 4: APK and Distribution




6/22/2012          http://blog.kerul.net   27
TQvm




                                Q&A
6/22/2012          http://blog.kerul.net   28

More Related Content

What's hot

Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
Edureka!
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspective
Gunjan Kumar
 
Google Android
Google AndroidGoogle Android
Google Android
Michael Angelo Rivera
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
master760
 
Android development tutorial
Android development tutorialAndroid development tutorial
Android development tutorial
nazzf
 
Android Development Training
Android Development TrainingAndroid Development Training
Android Development Training
chandutata
 
Android App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structureAndroid App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structure
Vijay Rastogi
 
9780134433646 annuzzi ch02 (1)
9780134433646 annuzzi ch02 (1)9780134433646 annuzzi ch02 (1)
9780134433646 annuzzi ch02 (1)
Peter Mburu
 
Getting Started with Android Development
Getting Started with Android DevelopmentGetting Started with Android Development
Getting Started with Android Development
Edureka!
 
Using Maven to build Java & Android program
Using Maven to build Java & Android programUsing Maven to build Java & Android program
Using Maven to build Java & Android program
Mu Chun Wang
 
Android Studio Overview
Android Studio OverviewAndroid Studio Overview
Android Studio Overview
Salim Hosen
 
Android development session 5 - Debug android studio
Android development   session 5 - Debug android studioAndroid development   session 5 - Debug android studio
Android development session 5 - Debug android studio
Farabi Technology Middle East
 
Creating the first app with android studio
Creating the first app with android studioCreating the first app with android studio
Creating the first app with android studio
Parinita03
 
Google Glasses Integration with SAP
Google Glasses Integration with SAPGoogle Glasses Integration with SAP
Google Glasses Integration with SAP
Gh14Cc10
 
Google Glass, the GDK, and HTML5
Google Glass, the GDK, and HTML5Google Glass, the GDK, and HTML5
Google Glass, the GDK, and HTML5
Oswald Campesato
 
Internship in android development-no appendix
Internship in android development-no appendixInternship in android development-no appendix
Internship in android development-no appendix
Diogo Pereira
 
Android chapter02-setup2-emulator
Android chapter02-setup2-emulatorAndroid chapter02-setup2-emulator
Android chapter02-setup2-emulator
guru472
 
Android Study Jams - Induction
Android Study Jams - InductionAndroid Study Jams - Induction
Android Study Jams - Induction
GDSCAISSMSIOIT
 
Android development 1july
Android development 1julyAndroid development 1july
Android development 1july
Edureka!
 
実践Android Developer Testing
実践Android Developer Testing実践Android Developer Testing
実践Android Developer Testing
ussy
 

What's hot (20)

Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspective
 
Google Android
Google AndroidGoogle Android
Google Android
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
 
Android development tutorial
Android development tutorialAndroid development tutorial
Android development tutorial
 
Android Development Training
Android Development TrainingAndroid Development Training
Android Development Training
 
Android App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structureAndroid App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structure
 
9780134433646 annuzzi ch02 (1)
9780134433646 annuzzi ch02 (1)9780134433646 annuzzi ch02 (1)
9780134433646 annuzzi ch02 (1)
 
Getting Started with Android Development
Getting Started with Android DevelopmentGetting Started with Android Development
Getting Started with Android Development
 
Using Maven to build Java & Android program
Using Maven to build Java & Android programUsing Maven to build Java & Android program
Using Maven to build Java & Android program
 
Android Studio Overview
Android Studio OverviewAndroid Studio Overview
Android Studio Overview
 
Android development session 5 - Debug android studio
Android development   session 5 - Debug android studioAndroid development   session 5 - Debug android studio
Android development session 5 - Debug android studio
 
Creating the first app with android studio
Creating the first app with android studioCreating the first app with android studio
Creating the first app with android studio
 
Google Glasses Integration with SAP
Google Glasses Integration with SAPGoogle Glasses Integration with SAP
Google Glasses Integration with SAP
 
Google Glass, the GDK, and HTML5
Google Glass, the GDK, and HTML5Google Glass, the GDK, and HTML5
Google Glass, the GDK, and HTML5
 
Internship in android development-no appendix
Internship in android development-no appendixInternship in android development-no appendix
Internship in android development-no appendix
 
Android chapter02-setup2-emulator
Android chapter02-setup2-emulatorAndroid chapter02-setup2-emulator
Android chapter02-setup2-emulator
 
Android Study Jams - Induction
Android Study Jams - InductionAndroid Study Jams - Induction
Android Study Jams - Induction
 
Android development 1july
Android development 1julyAndroid development 1july
Android development 1july
 
実践Android Developer Testing
実践Android Developer Testing実践Android Developer Testing
実践Android Developer Testing
 

Similar to Android development beginners faq

Android tutorial
Android tutorialAndroid tutorial
Android tutorial
Vaiga Nandhakumar
 
Android tutorial ppt
Android tutorial pptAndroid tutorial ppt
Android tutorial ppt
Rehna Renu
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
Jagannath Das
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
Danish_k
 
Android Stsucture
Android StsuctureAndroid Stsucture
Android Stsucture
Kartik Kalpande Patil
 
Notes Unit2.pptx
Notes Unit2.pptxNotes Unit2.pptx
Notes Unit2.pptx
MIT Autonomous Aurangabad
 
The Glass Class - Tutorial 3 - Android and GDK
The Glass Class - Tutorial 3 - Android and GDKThe Glass Class - Tutorial 3 - Android and GDK
The Glass Class - Tutorial 3 - Android and GDK
Gun Lee
 
Mobile & android apps presentation
Mobile & android apps  presentationMobile & android apps  presentation
Mobile & android apps presentation
Aya Taleb
 
Getting Started with Android 1.5
Getting Started with Android 1.5Getting Started with Android 1.5
Getting Started with Android 1.5
Gaurav Kohli
 
Andriod
Andriod Andriod
Andriod
Chayan Upadhyay
 
Android App Development Intro at ESC SV 2012
Android App Development Intro at ESC SV 2012Android App Development Intro at ESC SV 2012
Android App Development Intro at ESC SV 2012
Opersys inc.
 
AndroidOverview
AndroidOverviewAndroidOverview
AndroidOverview
stevenindands
 
Native Android Development Practices
Native Android Development PracticesNative Android Development Practices
Native Android Development Practices
Roy Clarkson
 
Introduction to Android - Mobile Fest Singapore 2009
Introduction to Android - Mobile Fest Singapore 2009Introduction to Android - Mobile Fest Singapore 2009
Introduction to Android - Mobile Fest Singapore 2009
sullis
 
Android studio
Android studioAndroid studio
Android studio
Andri Yabu
 
Module-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptxModule-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptx
lancelotlaytan1996
 
IntroToAndroid
IntroToAndroidIntroToAndroid
IntroToAndroid
Quickoffice Test
 
Android a brief intro
Android a brief introAndroid a brief intro
Android a brief intro
Kieran Gutteridge
 
Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009
sullis
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
fantasy zheng
 

Similar to Android development beginners faq (20)

Android tutorial
Android tutorialAndroid tutorial
Android tutorial
 
Android tutorial ppt
Android tutorial pptAndroid tutorial ppt
Android tutorial ppt
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
 
Android Stsucture
Android StsuctureAndroid Stsucture
Android Stsucture
 
Notes Unit2.pptx
Notes Unit2.pptxNotes Unit2.pptx
Notes Unit2.pptx
 
The Glass Class - Tutorial 3 - Android and GDK
The Glass Class - Tutorial 3 - Android and GDKThe Glass Class - Tutorial 3 - Android and GDK
The Glass Class - Tutorial 3 - Android and GDK
 
Mobile & android apps presentation
Mobile & android apps  presentationMobile & android apps  presentation
Mobile & android apps presentation
 
Getting Started with Android 1.5
Getting Started with Android 1.5Getting Started with Android 1.5
Getting Started with Android 1.5
 
Andriod
Andriod Andriod
Andriod
 
Android App Development Intro at ESC SV 2012
Android App Development Intro at ESC SV 2012Android App Development Intro at ESC SV 2012
Android App Development Intro at ESC SV 2012
 
AndroidOverview
AndroidOverviewAndroidOverview
AndroidOverview
 
Native Android Development Practices
Native Android Development PracticesNative Android Development Practices
Native Android Development Practices
 
Introduction to Android - Mobile Fest Singapore 2009
Introduction to Android - Mobile Fest Singapore 2009Introduction to Android - Mobile Fest Singapore 2009
Introduction to Android - Mobile Fest Singapore 2009
 
Android studio
Android studioAndroid studio
Android studio
 
Module-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptxModule-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptx
 
IntroToAndroid
IntroToAndroidIntroToAndroid
IntroToAndroid
 
Android a brief intro
Android a brief introAndroid a brief intro
Android a brief intro
 
Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 

More from Khirulnizam Abd Rahman

Html5 + Bootstrap & Mobirise
Html5 + Bootstrap & MobiriseHtml5 + Bootstrap & Mobirise
Html5 + Bootstrap & Mobirise
Khirulnizam Abd Rahman
 
Mobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordovaMobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordova
Khirulnizam Abd Rahman
 
Android app development hybrid approach for beginners - Tools Installations ...
Android app development  hybrid approach for beginners - Tools Installations ...Android app development  hybrid approach for beginners - Tools Installations ...
Android app development hybrid approach for beginners - Tools Installations ...
Khirulnizam Abd Rahman
 
Chapter 6 Java IO File
Chapter 6 Java IO FileChapter 6 Java IO File
Chapter 6 Java IO File
Khirulnizam Abd Rahman
 
Chapter 5 Class File
Chapter 5 Class FileChapter 5 Class File
Chapter 5 Class File
Khirulnizam Abd Rahman
 
Chapter 4 - Classes in Java
Chapter 4 - Classes in JavaChapter 4 - Classes in Java
Chapter 4 - Classes in Java
Khirulnizam Abd Rahman
 
Android app development Hybrid approach for beginners
Android app development  Hybrid approach for beginnersAndroid app development  Hybrid approach for beginners
Android app development Hybrid approach for beginners
Khirulnizam Abd Rahman
 
Tips menyediakan slaid pembentangan berkesan - tiada template
Tips menyediakan slaid pembentangan berkesan - tiada templateTips menyediakan slaid pembentangan berkesan - tiada template
Tips menyediakan slaid pembentangan berkesan - tiada template
Khirulnizam Abd Rahman
 
Chapter 3 Arrays in Java
Chapter 3 Arrays in JavaChapter 3 Arrays in Java
Chapter 3 Arrays in Java
Khirulnizam Abd Rahman
 
Topik 4 Teknologi Komputer: Hardware, Software dan Heartware
Topik 4 Teknologi Komputer: Hardware, Software dan HeartwareTopik 4 Teknologi Komputer: Hardware, Software dan Heartware
Topik 4 Teknologi Komputer: Hardware, Software dan Heartware
Khirulnizam Abd Rahman
 
Chapter 2 Java Methods
Chapter 2 Java MethodsChapter 2 Java Methods
Chapter 2 Java Methods
Khirulnizam Abd Rahman
 
Topik 3 Masyarakat Malaysia dan ICT
Topik 3   Masyarakat Malaysia dan ICTTopik 3   Masyarakat Malaysia dan ICT
Topik 3 Masyarakat Malaysia dan ICT
Khirulnizam Abd Rahman
 
Chapter 2 Method in Java OOP
Chapter 2   Method in Java OOPChapter 2   Method in Java OOP
Chapter 2 Method in Java OOP
Khirulnizam Abd Rahman
 
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
Khirulnizam Abd Rahman
 
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan InsanPanduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
Khirulnizam Abd Rahman
 
Topik 1 Islam dan Teknologi Maklumat
Topik 1 Islam dan Teknologi MaklumatTopik 1 Islam dan Teknologi Maklumat
Topik 1 Islam dan Teknologi Maklumat
Khirulnizam Abd Rahman
 
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Khirulnizam Abd Rahman
 
Chapter 1 Nested Control Structures
Chapter 1 Nested Control StructuresChapter 1 Nested Control Structures
Chapter 1 Nested Control Structures
Khirulnizam Abd Rahman
 
Chapter 1 nested control structures
Chapter 1 nested control structuresChapter 1 nested control structures
Chapter 1 nested control structures
Khirulnizam Abd Rahman
 
DTCP2023 Fundamentals of Programming
DTCP2023 Fundamentals of ProgrammingDTCP2023 Fundamentals of Programming
DTCP2023 Fundamentals of Programming
Khirulnizam Abd Rahman
 

More from Khirulnizam Abd Rahman (20)

Html5 + Bootstrap & Mobirise
Html5 + Bootstrap & MobiriseHtml5 + Bootstrap & Mobirise
Html5 + Bootstrap & Mobirise
 
Mobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordovaMobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordova
 
Android app development hybrid approach for beginners - Tools Installations ...
Android app development  hybrid approach for beginners - Tools Installations ...Android app development  hybrid approach for beginners - Tools Installations ...
Android app development hybrid approach for beginners - Tools Installations ...
 
Chapter 6 Java IO File
Chapter 6 Java IO FileChapter 6 Java IO File
Chapter 6 Java IO File
 
Chapter 5 Class File
Chapter 5 Class FileChapter 5 Class File
Chapter 5 Class File
 
Chapter 4 - Classes in Java
Chapter 4 - Classes in JavaChapter 4 - Classes in Java
Chapter 4 - Classes in Java
 
Android app development Hybrid approach for beginners
Android app development  Hybrid approach for beginnersAndroid app development  Hybrid approach for beginners
Android app development Hybrid approach for beginners
 
Tips menyediakan slaid pembentangan berkesan - tiada template
Tips menyediakan slaid pembentangan berkesan - tiada templateTips menyediakan slaid pembentangan berkesan - tiada template
Tips menyediakan slaid pembentangan berkesan - tiada template
 
Chapter 3 Arrays in Java
Chapter 3 Arrays in JavaChapter 3 Arrays in Java
Chapter 3 Arrays in Java
 
Topik 4 Teknologi Komputer: Hardware, Software dan Heartware
Topik 4 Teknologi Komputer: Hardware, Software dan HeartwareTopik 4 Teknologi Komputer: Hardware, Software dan Heartware
Topik 4 Teknologi Komputer: Hardware, Software dan Heartware
 
Chapter 2 Java Methods
Chapter 2 Java MethodsChapter 2 Java Methods
Chapter 2 Java Methods
 
Topik 3 Masyarakat Malaysia dan ICT
Topik 3   Masyarakat Malaysia dan ICTTopik 3   Masyarakat Malaysia dan ICT
Topik 3 Masyarakat Malaysia dan ICT
 
Chapter 2 Method in Java OOP
Chapter 2   Method in Java OOPChapter 2   Method in Java OOP
Chapter 2 Method in Java OOP
 
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
 
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan InsanPanduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
 
Topik 1 Islam dan Teknologi Maklumat
Topik 1 Islam dan Teknologi MaklumatTopik 1 Islam dan Teknologi Maklumat
Topik 1 Islam dan Teknologi Maklumat
 
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
 
Chapter 1 Nested Control Structures
Chapter 1 Nested Control StructuresChapter 1 Nested Control Structures
Chapter 1 Nested Control Structures
 
Chapter 1 nested control structures
Chapter 1 nested control structuresChapter 1 nested control structures
Chapter 1 nested control structures
 
DTCP2023 Fundamentals of Programming
DTCP2023 Fundamentals of ProgrammingDTCP2023 Fundamentals of Programming
DTCP2023 Fundamentals of Programming
 

Recently uploaded

BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
Liveplex
 
20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf
Sally Laouacheria
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
ArgaBisma
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
huseindihon
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Chris Swan
 
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdfBT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
Neo4j
 
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM
Vijayananda Mohire
 
UiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs ConferenceUiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs Conference
UiPathCommunity
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
Lidia A.
 
Choose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presenceChoose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presence
rajancomputerfbd
 
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
Kief Morris
 
How Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdfHow Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdf
HackersList
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
BookNet Canada
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
Toru Tamaki
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
RaminGhanbari2
 
Password Rotation in 2024 is still Relevant
Password Rotation in 2024 is still RelevantPassword Rotation in 2024 is still Relevant
Password Rotation in 2024 is still Relevant
Bert Blevins
 
Measuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at TwitterMeasuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at Twitter
ScyllaDB
 
What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx
Stephanie Beckett
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
welrejdoall
 

Recently uploaded (20)

BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
 
20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
 
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdfBT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
 
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM
 
UiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs ConferenceUiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs Conference
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
 
Choose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presenceChoose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presence
 
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
 
How Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdfHow Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdf
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
 
Password Rotation in 2024 is still Relevant
Password Rotation in 2024 is still RelevantPassword Rotation in 2024 is still Relevant
Password Rotation in 2024 is still Relevant
 
Measuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at TwitterMeasuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at Twitter
 
What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
 

Android development beginners faq

  • 1. Slideshare.net/khirulnizam fb.com/khirulnizam blog.kerul.net Android Dev 101 June 23, 2012 Khirulnizam Abd Rahman
  • 2. Agenda  Intro  Demo 1: New Android project Properties window Android Emulator DDMS - Dalvik Debug Monitor Demo 2: Widgets and Interactions  Day 2 - 24-06-2013 (8.30am - 4pm) Demo 3: HTML and Webview Demo 4: Audio  Demo 5: Video Signing APK  Uploading to Google Play 6/22/2012 http://blog.kerul.net 2
  • 3. Android Devices 6/22/2012 http://blog.kerul.net 3
  • 4. Android Story  http://www.techsavys.info/2011/07/the- android-story-an-android-infographic- discussing-about-its-beginning-on- going-changes-and-worldwide-market- shares.html 6/22/2012 http://blog.kerul.net 4
  • 5. Faq1: What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware and key applications (platform). The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.  The kernel of most Android version is based on Linux 2.6 (3.0 for ICS).  Android architecture; 6/22/2012 http://blog.kerul.net 5
  • 6. Android Architecture 6/22/2012 http://blog.kerul.net 6
  • 7. Faq2: Who develop Android?  Initially developed by Andrew (Andy) Rubin and his team in Android Inc.  Google acquired Android Inc. in 2005.  Now, it is developed by Google under Andy Rubin (Senior Vice President of Mobile) 6/22/2012 http://blog.kerul.net 7
  • 8. Faq3: How many versions (distributions) Android has? 6/22/2012 http://blog.kerul.net 8
  • 9. Source: http://developer.android.com/resources/dashb oard/platform-versions.html 6/22/2012 http://blog.kerul.net 9
  • 10. Faq4: What is API Level?  API Level is an integer value that uniquely identifies the framework API revision offered by a version of the Android platform.  The Android platform provides a framework API that applications can use to interact with the underlying Android system. 6/22/2012 http://blog.kerul.net 10
  • 11. Faq5: What is Android app?  Developer can develop application that runs on top of Android.  App is actually a simpler version of application.  Uses *.apk for the installer file extension. 6/22/2012 http://blog.kerul.net 11
  • 12. App samples 6/22/2012 http://blog.kerul.net 12
  • 13. Faq6: What is the language used to develop Android app?  Java  compiled into Dalvik Bytecode (NOTJava bytecode).  Android provides Dalvik virtual machine- DVM inside Android (NOT Java virtual machine-JVM)  Using Android API – (with some Java APIs). 6/22/2012 http://blog.kerul.net 13
  • 14. Faq7: What is Dalvik Virtual Machine, is it similar as JVM?  Author - Dan Bornstein  Dalvik VM implementing slightly different architecture to JVM.  Dalvik VM is a register-based architecture.  Being optimized for low memory and slower processing speed.  The VM was slimmed down to use less space. 6/22/2012 http://blog.kerul.net 14
  • 15. Faq8: What are tools needed to develop Android App?  Latest JDK – version 6 - http://www.oracle.com/technetwork/java/javase/downl oads/jdk-6u27-download-440405.html (not yet tested against JDK 7)  Eclipse (as the IDE) - http://www.eclipse.org/downloads/packages/eclipse- ide-java-developers/indigor  Android Development Toolkit (ADT 12) for Eclipse - http://developer.android.com/sdk/eclipse-adt.html  Android SDK - http://developer.android.com/sdk/  Installation guide - http://blog.kerul.net/2011/06/eclipse- helios-android-development.html  Third parties: Titanium, PhoneGap, Unity3D 6/22/2012 http://blog.kerul.net 15
  • 16. IDE - Eclipse 6/22/2012 http://blog.kerul.net 16
  • 18. Emulator 6/22/2012 http://blog.kerul.net 18
  • 19. Dalvik Debugger 6/22/2012 http://blog.kerul.net 19
  • 20. Faq8: Where to distribute my App?  market.android.com  MobileApps.com  GetJar.com 6/22/2012 http://blog.kerul.net 20
  • 21. 6/22/2012 http://blog.kerul.net 21
  • 22. 6/22/2012 http://blog.kerul.net 22
  • 23. Android Project Structure  Inside Android Project, there should be; /src – the Java codes are here /gen – generated automatically /assets – put your fonts, videos, sounds here /res – images, layout and global variables /drawable-hdpi –for high spec phones /drawable-ldpi –for low spec phones /drawable-mdpi –for medium spec phones /layout – all XML file for the screen(s) layout /values – global constant variables 6/22/2012 http://blog.kerul.net 23
  • 24. 6/22/2012 http://blog.kerul.net 24
  • 25. AndroidManifest  AndroidManifest.xml – app’s permissions need to be registered here – (eg: app can access Internet, phone contacts, camera, etc must be mentioned here) 6/22/2012 http://blog.kerul.net 25
  • 26. <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="7" android:versionName="1.7" package="net.kerul.mMathurat"> <application android:icon="@drawable/icon" android:label="@string/app_name" android:taskAffinity=".mMathuratActivity"> <activity android:name=".mMathuratActivity" android:label="@string/app_name" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".Aboutus" class=".Aboutus" android:label="Mengenai kami..." android:screenOrientation="portrait"> </activity> <activity android:name=".Berterusan" class=".Berterusan" android:label="Mod pemanduan..." android:screenOrientation="portrait"> </activity> </application> <uses-sdk android:minSdkVersion="7" /> <receiver android:name=".DetectIncomingCall"> <intent-filter> <action android:name="android.intent.action.PHONE_STATE" /> </intent-filter> </receiver> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.VIBRATE"></uses-permission> </manifest> 6/22/2012 http://blog.kerul.net 26
  • 27. DEMO  Demo 0: The IDE (Eclipse + ADT)  Demo 1: Creating a new Android Project (and the project structure).  Demo 2: Widgets and interaction – Textbox and Button.  Demo 3: HTML and WebView  Demo 4: APK and Distribution 6/22/2012 http://blog.kerul.net 27
  • 28. TQvm Q&A 6/22/2012 http://blog.kerul.net 28