• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Latest & interesting updates #android dev
 

Latest & interesting updates #android dev

on

  • 293 views

A talk on the latest and interesting #AndroidDev updates recently announced and available.

A talk on the latest and interesting #AndroidDev updates recently announced and available.

This talk was delivered at GDG DevFest Kathmandu (Nepal).

Statistics

Views

Total Views
293
Views on SlideShare
293
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

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

    Latest & interesting updates #android dev Latest & interesting updates #android dev Presentation Transcript

    • GDG DevFest @ Kathmandu, Nepal
    • Latest & Interesting updates #AndroidDev @pareshmayani
    • Paresh Mayani Android Developer Manager, GDG Ahmedabad
    • Interesting updates - #AndroidDev • Android Studio • Gradle Build System • Volley Library • Google Maps Android API v2 • Staged rollouts • Alpha and Beta Testing • Optimization Tips • App Translation Service @pareshmayani
    • Android Studio @pareshmayani
    • Android Studio • Android focused IDE (designed specifically for Android development) • New Android development environment based on IntelliJ IDEA • Similar to Eclipse with the ADT Plug-in • Contains All the Android SDK Tools to design, test, debug, and profile your app @pareshmayani
    • Gradle Build System @pareshmayani
    • Gradle Build System • Gradle is an advanced build management system based on Groovy • Its an Open source build system • Combines the power of Ant and Maven @pareshmayani
    • Features of Gradle build system • Dependency Management (Flexible approach to dependency management that can reuse existing maven repositories or reference local JARs) @pareshmayani
    • Features of Gradle build system • Dependency Management (Flexible approach to dependency management that can reuse existing maven repositories or reference local JARs) • A single build system (Gradle is the authoritative build across the IDE and the command-line.) @pareshmayani
    • Features of Gradle build system • Dependency Management (Flexible approach to dependency management that can reuse existing maven repositories or reference local JARs) • A single build system (Gradle is the authoritative build across the IDE and the command-line.) • Product Flavors (Free & Paid version), Build Variants (Play store OR Amazon OR Any other store), Build Type (Debug, QA, Release) @pareshmayani
    • Features of Gradle build system • Dependency Management (Flexible approach to dependency management that can reuse existing maven repositories or reference local JARs) • A single build system (Gradle is the authoritative build across the IDE and the command-line.) • Product Flavors (Free & Paid version), Build Variants (Play store OR Amazon OR Any other store), Build Type (Debug, QA, Release) • Binary Bundles for Libaries (.aar) (Gradle supports the new .aar binary bundle format for the library projects) @pareshmayani
    • Volley – “the simultaneous firing of a number of missiles” @pareshmayani
    • Android – Volley library “Volley is a library that makes networking for Android apps easier and most importantly, faster.” @pareshmayani
    • Advantages of using Volley Library • Volley automatically schedule all network requests. Volley will be taking care of all the network requests your app executes for fetching response or image from web. • Volley provides powerful customization abilities. • Volley provides Debugging and tracing tools. • Volley provides powerful cancellation request API. - You can cancel a single request or - You can set blocks or scopes of requests to cancel. @pareshmayani
    • How to get started? 1. Clone the Volley project 2. Import the code into your project @pareshmayani
    • Clone the Volley Project git clone https://android.googlesource.com/platform/frameworks/volley @pareshmayani
    • 2 Main classes of Volley Library 2 main classes Request queue It is the interest you use for dispatching requests to the network It contains all the necessary details for making web API call Request @pareshmayani
    • Take a look at JsonObjectRequest JsonObjectRequest ObjJsonRequest = new JsonObjectRequest(Request.Method.GET, url, null, new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { // Successful response } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { // Failure response } }); @pareshmayani
    • Basic Example import com.android.volley.Request; import com.android.volley.RequestQueue; import com.android.volley.Response; import com.android.volley.VolleyError; import com.android.volley.toolbox.JsonObjectRequest; import com.android.volley.toolbox.Volley; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { …… …... RequestQueue queue = Volley.newRequestQueue(this); String url = “Web API URL”; // Prepare JSON Object request queue.add(ObjJsonRequest ); } @pareshmayani
    • Google Maps API v2 @pareshmayani
    • Google Maps Android API v2 • With v2 of Maps Android API, you can embed maps into an activity as a fragment @pareshmayani
    • Google Maps Android API v2 • With v2 of Maps Android API, you can embed maps into an activity as a fragment • The API is now distributed as part of the Google Play services SDK @pareshmayani
    • Google Maps Android API v2 • With v2 of Maps Android API, you can embed maps into an activity as a fragment • The API is now distributed as part of the Google Play services SDK • Maps are now 3D @pareshmayani
    • Google Maps Android API v2 • With v2 of Maps Android API, you can embed maps into an activity as a fragment • The API is now distributed as part of the Google Play services SDK • Maps are now 3D • The Maps API now uses vector tiles. Their data representation is smaller, so maps appear in your apps faster, and use less bandwidth. @pareshmayani
    • Google Maps Android API v2 • With v2 of Maps Android API, you can embed maps into an activity as a fragment • The API is now distributed as part of the Google Play services SDK • Maps are now 3D • The Maps API now uses vector tiles. Their data representation is smaller, so maps appear in your apps faster, and use less bandwidth. • Caching is improved @pareshmayani
    • Getting started with Map API v2 Step - 1 Install and Set up the Google Play Service SDK @pareshmayani
    • Getting started with Map API v2 Step - 2 Run the sample Once you've installed the Google Play services package, the Google Maps sample is located in <android-sdk>/extras/google-play-services/samples/maps @pareshmayani
    • Basic example <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <fragment android:id="@+id/map" android:name="com.google.android.gms.maps.MapFragment" android:layout_width="match_parent" android:layout_height="match_parent"/> </RelativeLayout> public class BasicMapActivity extends FragmentActivity { /** * Note that this may be null if the Google Play services APK is not available. */ private GoogleMap mMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.basic_demo); mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)) .getMap(); } @pareshmayani
    • Placing Marker // latitude and longitude double latitude = ; double longitude = ; // create marker MarkerOptions marker = new MarkerOptions().position(new LatLng(latitude, longitude)).title(“Hello World!"); // adding marker googleMap.addMarker(marker); @pareshmayani
    • Placing Marker private static final LatLng AHMEDABAD= new LatLng(23.0300, 72.5800); // Uses a colored icon. Marker mBrisbane = mMap.addMarker(new MarkerOptions() .position(AHMEDABAD) .title(“Ahmedabad") .snippet("Population: 5.571 million ") .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE))); // Uses a custom icon. Marker mSydney = mMap.addMarker(new MarkerOptions() .position(AHMEDABAD) .title(“Ahmedabad") .snippet("Population: 5.571 million ") .icon(BitmapDescriptorFactory.fromResource(R.drawable.arrow))); // Creates a draggable marker. Long press to drag. Marker mMelbourne = mMap.addMarker(new MarkerOptions() .position(AHMEDABAD) .title(“Ahmedabad") .snippet("Population: 5.571 million ") .draggable(true)); @pareshmayani
    • Staged Rollouts @pareshmayani
    • Staged Rollouts • With a staged rollout, you can publish your app to a certain percentage of the market first to make sure that your app works properly before rolling it out to everybody. • Users receiving the staged rollout can leave public reviews in Google Play. @pareshmayani
    • Staged Rollouts Step - 1 Publish APK as staged rollout @pareshmayani
    • Staged Rollouts Step - 2 Publish app to certain percentage @pareshmayani
    • Alpha and Beta Testing @pareshmayani
    • Alpha and Beta Testing • Google Play Developer console allows you to test two different version of your app at the same time in addition to your production version. • It’s FREE • Testing by real users before app goes live @pareshmayani
    • Alpha and Beta Testing Step - 1 Upload new APK to Beta/Alpha @pareshmayani
    • Alpha and Beta Testing Step - 2 Publish now to Beta/Alpha @pareshmayani
    • Alpha and Beta Testing Step - 3 Selecting groups of testers @pareshmayani
    • Alpha and Beta Testing Move to Alpha/Beta/Production @pareshmayani
    • Google Play ServicesOptimization Tips @pareshmayani
    • Optimization Tips @pareshmayani
    • Optimization Tips @pareshmayani
    • App Translation Service @pareshmayani
    • App Translation Service • Google Play can help you quickly find and purchase translations of your app. • In the Developer Console, you can browse a list of third- party vendors who are pre-qualified by Google to offer high- quality translation at competitive prices. Steps: 1. Upload the strings you want translated, select the languages you want to translate into. 2. Select your translation vendor based on time and price. @pareshmayani
    • Links 1. https://github.com/PareshMayani/Android-Volley-Example 2. https://developers.google.com/maps/documentation/andro id/ 3. http://developer.android.com/distribute/googleplay/publish /localizing.html#gp-trans @pareshmayani
    • Paresh Mayani Manager, GDG Ahmedabad Android Developer pareshmayani@gmail.com @pareshmayani < Stay in Touch >