1. Trang chủ
  2. » Công Nghệ Thông Tin

Android GUI project slide

25 169 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 25
Dung lượng 858 KB

Nội dung

Android GUI Project John Hurley CS 454 Android • 1. Android Basics • 2. Android Development • 3. Android UI • 4. Hello, World • 5. My Project Android Basics • Open source OS • Uses Linux kernel • Optimized for limited-resource environment • Apps typically written in Java • Apps run on the Dalvik Virtual Machine • Not a JVM, but works similarly from developer’s point of view • Usually one app per DVM • Each DVM runs under Linux as a separate user • App permissions set at install time • Possible to use C or C++ compiled to machine code, but still runs on VM. It’s not clear to me how this works. • Docs say it does not necessarily improve performance. Sams Teach Yourself Android™Application Development in 24 Hours (0321673352) Copyright ©2010 Lauren Darcey and Shane Conder FIGURE 5.6 Simplified Android platform architecture from a security perspective. Android Development • Well-defined framework for app development • Apps are typically coded using Java syntax, but other parts of the Java platform are missing • Some standard Java SE or ME APIs and class libraries are not included • I will give examples when I find out! Android Development • Standard development environment is Eclipse + Android Development Tools plugin + Android SDK • Development requires either an Android OS device or an emulator • Emulator has limitations: • Performance is poor • Camera, etc., simulated using your computer’s hardware • No real phone calls or texts • GPS data, battery readings, etc. must be simulated • Real device is affected by specific hardware and software configuration Android vs. Other Mobile OS I was able to choose what kind of smart phone to get according to which platform I wanted to use to try mobile development Android: • I had Java backend code ready to go for a first project • Interesting platform: • Familiar programming environment • Currently the market leader • Broad market, unlike more focused iOS, Blackberry, and (Palm) webOS • Development tools are open source and are free even for commercial use, unlike Visual Studio Android App vs. Mobile- Optimized RIA • Android Flash plugins available; Silverlight coming soon • Could develop in JavaScript and/or HTML5 • WWW App • Easier for users to run; no need to install • For a paid app, avoid the 30% App Store commission • Easier to write cross-platform apps • Android Apps • Fewer security hurdles • Use APIs for access to built in GPS, camera, etc. • Probably better performance; one layer less Android Apps: Marketing • Usually market apps through Android App Market • There are other markets, also • App store will dominate the market due to access through built in app • Can set up for download directly on a website • User must agree to “install apps from unknown sources” Android Apps: Marketing • Revenue from app sales prices and/or advertising • Conventional wisdom is that iOS users will pay for apps, but Android users won’t • 57% of Android App Store apps are free, vs. 28% for Apple App Store • Android Market takes 30% commission • Any purchase model other than one-time purchase must be homegrown, using Paypal or similar service • PPC ads • My guess is that response to these is extremely low • Probably need to be very aggressive with banner ads • Sell to companies? [...]... encoding="utf-8"?> strings.xml resource file: Hello Again, CS454! CS454 AndroidDemo ... Battery low Android UI • UI construction can be done in three ways: • Programmatic, like hand-coded Java desktop GUI construction • Declarative hand-written, like Java web UI construction • XML • Declarative with a GUI builder, like NET UI construction • GUI builder generates the XML Programmatic UI package cs454.demo; import android. app.Activity; import android. widget.TextView; import android. os.Bundle;... available moves I will develop an Android UI and use my existing backend code as much as possible • • • • References http://www.ibm.com/developerworks/opensource/library/os-androiddevel/ http://developer .android. com/resources/browser.html?tag=tutorial Conder and Darcey, Android Wireless Application Development, AddisonWesley, 2010 Conder and Darcey, Sams Teach Yourself Android Application Development... app_name=0x7f040001; public static final int hello=0x7f040000; } UI With GUI Builder Android Event Handlers From the code file for the activity: Button ok = (Button) findViewById(R.id.button1); ok.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { CharSequence s = et.getText(); tv.setText("Welcome, " + s); } }); Sams Teach Yourself Android Application Development in 24 Hours (0321673352)... Important callback methods of the activity life cycle Copyright ©2010 Lauren Darcey and Shane Conder APIs for Android built-ins • Android OS ships with many built in apps • Web Browser • Google Maps • Navigation • Camera apps • Built in access for these as well as TTS and Voice Recognition, etc Demo My Project • • • • Goats and Tigers is a board game, which we implemented in Java in CS 460 last term The... Hello Again, CS454! CS454 AndroidDemo Manual Declarative UI Java class: package cs454.demo; import android. app.Activity; import android. os.Bundle; public class AndroidDemo extends Activity { /** Called when the activity is first created */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);.. .Android Deployment • Apps are packaged in apk format, variant of jar, then downloaded to device and installed • apks contain dex files (bytecode), manifest and various other files • Manifest contains security and link info, hardware access info, minimum OS release info, etc Android UI • • Activity: single screen with a UI, somewhat analogous... another activity to compose an email, and another activity for reading emails • Implement by subclassing Activity class View: drawable object • Android UI View ≠ MVC View • • UI contains a hierarchy of Views View is a class, subclassed by the drawable objects in the UI Android UI • Service: background operation • play music in the background while the user is in a different application • fetch data over the... builder, like NET UI construction • GUI builder generates the XML Programmatic UI package cs454.demo; import android. app.Activity; import android. widget.TextView; import android. os.Bundle; public class AndroidDemo extends Activity { /** Called when the activity is first created */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Activity is a subclass . Android GUI Project John Hurley CS 454 Android • 1. Android Basics • 2. Android Development • 3. Android UI • 4. Hello, World • 5. My Project Android Basics • Open source. encoding="utf-8"?> <TextView xmlns :android= "http://schemas .android. com/apk/res /android& quot; android: id="@+id/textview" android: layout_width="fill_parent" android: layout_height="fill_parent" . with a GUI builder, like .NET UI construction • GUI builder generates the XML Programmatic UI package cs454.demo; import android. app.Activity; import android. widget.TextView; import android. os.Bundle; public

Ngày đăng: 24/10/2014, 10:35

TỪ KHÓA LIÊN QUAN

w