mobile programming lecture 19

25
Mobile Programming Lecture 19 Publishing to Google Play

Upload: vicky

Post on 18-Jan-2016

25 views

Category:

Documents


0 download

DESCRIPTION

Mobile Programming Lecture 19. Publishing to Google Play. Agenda. Preparing Your App for Google Play Positions with The Mobile Lab. Publishing to Google Play. What are some things that you think should be done before you publish to your app to Google Play?. Debugging. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Mobile Programming Lecture 19

Mobile ProgrammingLecture 19

Publishing to Google Play

Page 2: Mobile Programming Lecture 19

Agenda

• Preparing Your App for Google Play

• Positions with The Mobile Lab

Page 3: Mobile Programming Lecture 19
Page 4: Mobile Programming Lecture 19

Publishing to Google Play

What are some things that you think should be done before you publish to your app to Google Play?

Page 5: Mobile Programming Lecture 19

Debugging

• We've covered debugging previously

• If you don't know how to debug at this point, that's my fault.

Page 6: Mobile Programming Lecture 19

Preparing Your App

Test your application extensively on an actual device

• �JUnit and other test cases.

• UI/Application Exercise Monkey

Page 7: Mobile Programming Lecture 19

UI/Application Exercise Monkey

• The Monkey is a command-line tool that you can run on any emulator instance or on a device

• It sends a pseudo-random stream of user events into the system, which acts as a stress test on the application software you are developing.

Page 8: Mobile Programming Lecture 19

UI/Application Exercise Monkey

• The Monkey includes a number of options, but they break down into four primary categories:

o Basic configuration options, such as setting the number of events to attempt

o Operational constraints, such as restricting the test to a single package

o Event types and frequencies

o Debugging options

Page 9: Mobile Programming Lecture 19

UI/Application Exercise Monkey

• If your application crashes or receives any sort of unhandled exception, the Monkey will stop and report the error

• If your application generates an “application not responding error”, the Monkey will stop and report the error

Page 10: Mobile Programming Lecture 19

UI/Application Exercise Monkey

e.g.

$ adb shell monkey -p your.package.name -v 500

Command Options

Page 11: Mobile Programming Lecture 19

Preparing Your App

What do you think are some Things That Cannot Change after you first publish an app to the market?

Page 12: Mobile Programming Lecture 19

Preparing Your App

Choose a good package name!

Things That Cannot Change

Page 13: Mobile Programming Lecture 19

Preparing Your App

Test your application extensively on an actual device

• �JUnit and other test cases.

• �UI/Application Exercise Monkey

• Obtain one or more physical devices �Run it under realistic network conditions �Can verify that the UI elements are sized correctly �Can check that your performance and battery efficiency

are acceptable

• �Testing your Application

Page 14: Mobile Programming Lecture 19

Preparing Your App

• �Consider adding an End User License Agreement in your application

o To protect your person, organization, and intellectual property, you may want to provide an End User License Agreement (EULA) with your application

• http://bees4honey.com/blog/tutorial/adding-eula-to-android-app/

Page 15: Mobile Programming Lecture 19

Preparing Your App

• �Consider adding support for Android Market Licensing

o This is optional.

o �If you are publishing a paid application through Android Market, consider adding support for Android Market Licensing.

Page 16: Mobile Programming Lecture 19

Preparing Your App

• �Consider adding support for Android Market Licensing

• With Google Play Licensing, your application can query Google Play at run time to obtain the licensing status for the current user, then allow or disallow further use as appropriate

• an application can o check the licensing status and then apply custom constraints that

allow the user to run it unlicensed for a specific validity periodo restrict use of the application to a specific device, in addition to any

other constraints.

• More on Licensing

Page 17: Mobile Programming Lecture 19

Preparing Your App

• �Specify an icon and label in the application's manifesto The icon and label that you specify in an

application's manifest are important because they are displayed to users as your application's icon and name

o �They are displayed on the device's Home screen, as well as in Manage Applications, My Downloads, and elsewhere.

o Additionally, publishing services may display the icon and label to users.

o �Define the attributes android:icon and android:label in <application> element in the manifest.

Page 18: Mobile Programming Lecture 19

Preparing Your App

• �Before you do the final compile of your application

Version your application• Before you compile your application, you must make sure that you

have defined a version number for your application, specifying an appropriate value for both the android:versionCode and android:version Name attributes of the <manifest> element in the application's manifest file.

• Carefully consider your version numbering plans in the context of your overall application upgrade strategy.

• If you have previously released a version of your application, you MUST make sure to increment both the Version Code and Version Name Attributes.

• �Versioning your Application

Page 19: Mobile Programming Lecture 19

Preparing Your App

• �Before you do the final compile of your application

Version your application

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.package.name" android:versionCode="2" android:versionName="1.1">

<application android:icon="@drawable/icon" android:label="@string/app_name">

... </application></manifest>

Page 20: Mobile Programming Lecture 19

Preparing Your App

Next, you need to

• Obtain a suitable private key

• Compile your application in release mode

• Sign your application with your private key

• Align the final APK package

Do you want to learn how to do this via the command line?

• Signing your application

Page 21: Mobile Programming Lecture 19

Preparing Your App

To do this in Eclipse

• File > Export > Export Android Application

To get an idea of what values you should enter in the form, look at the sample values used on the command line here

Page 22: Mobile Programming Lecture 19

Preparing Your App

Preparing for Release

Page 23: Mobile Programming Lecture 19

Mobile Lab Positions

Interested in working for the Mobile Lab?

Page 24: Mobile Programming Lecture 19

Do you have what it takes?

• The Mobile Lab is looking for interns for this coming fall

• If you are interested in working for The Mobile Lab

1. Send resumes to [email protected]

2. Candidates selected for interview

3. Interviews conducted during the 1st and 2nd week of classes

4. Candidates notified about interview results

Page 25: Mobile Programming Lecture 19

Do you have what it takes?

• These are unpaid positions in the Mobile Lab, but it's a great opportunity to earn experience!

• I will not be interviewing anyone in this class

• Feel free to send me your resume and ask me for advice on how it can be improved and tailored for The Mobile Lab