Showing posts with label Android Developer. Show all posts
Showing posts with label Android Developer. Show all posts

Thursday, October 20, 2016

New video tips to help news publishers find success on Google Play

Posted by Tamzin Taylor - Strategic Partner Lead, Google Play





Today we have released a three-part video series ‘Tips for
your news app on Google Play’
, where you can find actionable tips
and learn best practices for developing, launching and monetising a high quality
news app. The video series accompanies the recently published href="https://play.google.com/store/books/details/Google_Inc_The_News_Publisher_Playbook_for_Android?id=O7T3CwAAQBAJ">News
Publisher Playbook
.

href="https://www.youtube.com/playlist?list=PLWz5rJ2EKKc_ElGrEtiEXc83m1SeYu3-Q">Watch
the video series
to learn:

  • 10 tips on how to design and develop your News app
  • 10 tips to help you launch your News app and start gaining readers
  • 10 tips to engage your readers and monetize your News app




You can also href="https://play.google.com/store/books/details/Google_Inc_The_News_Publisher_Playbook_for_Android?id=O7T3CwAAQBAJ&hl=en_GB">get
the News Publisher Playbook on the Play Store
to help you develop a
successful news mobile strategy on Android. It includes tips on mobile website
optimization, how to create a Google Play Newsstand edition, how to improve your
native app, and more.

Give us your feedback

Once you’ve checked out the video series, we’d love to hear your feedback so we
can continue to help you find success with and achieve your business objectives.
Leave a comment or a thumbs up, and href="https://www.youtube.com/channel/UCVHFbqXqoYvEWM1Ddxl0QDg?sub_confirmation=1">subscribe
to the Android Developers YouTube channel
!

Also, href="https://www.youtube.com/playlist?list=PLWz5rJ2EKKc_ElGrEtiEXc83m1SeYu3-Q">check
out our other videos in in the Tips for Success on Google Play series
,
including the recent video on href="https://www.youtube.com/watch?v=PfwHq8w9GBc&list=PLWz5rJ2EKKc_ElGrEtiEXc83m1SeYu3-Q&index=11">10
tips to build an app for billions of users
.

For more best practices to find success on Google Play, href="http://g.co/play/playbook-androiddevblogposts-evergreen">get the new
Playbook for Developers app
.








Tuesday, October 18, 2016

Announcing the Google Play Indie Games Festival in San Francisco, Sept. 24

Posted by Jamil Moledina, Google Play, Games Strategic Lead


If you’re an indie game developer, you know that games are a powerful medium of
expression of art, whimsy, and delight. Being on Google Play can help you reach
over a billion users and build a successful, global business. That’s why we
recently introduced programs, like the href="https://play.google.com/store/info/topic?id=topic_b000054_games_indie_corner_tp&e=-EnableAppDetailsPageRedesign">Indie
Corner
, to help more gamers discover your works of art.


To further celebrate and showcase the passion and innovation of indie game
developers, we’re hosting the Google Play Indie Games Festival at the href="https://www.google.com/maps/place/Terra+Gallery+%26+Event+Venue/@37.785531,-122.3929643,15z/data=!4m5!3m4!1s0x0:0xf5fb5bcb9c7795ab!8m2!3d37.785531!4d-122.3929643">Terra
Gallery
in San Francisco, on September 24.





This is a great opportunity for you to showcase your indie title to the public,
increase your network, and compete to win great prizes, such as Tango devices,
free tickets for Google I/O 2017, and Google ad campaign support. Admission will
be free and players will get the chance to play and vote on their favorites.


If you’re interested in showcasing your game, we’re href="https://docs.google.com/a/google.com/forms/d/e/1FAIpQLSduaM998L0WXm_4znsZjHX5-unZLBChNXHuCHbTlWuAcmMNmQ/viewform">accepting
submissions
now through August 14. We’ll then select high-quality games that
are both innovative and fun for the festival. Submissions are open to US and
Canadian developers with 15 or less full time staff. Only games published on or
after January 1, 2016 or those to be published by December 31, 2016 are
eligible. See href="https://docs.google.com/a/google.com/forms/d/e/1FAIpQLSduaM998L0WXm_4znsZjHX5-unZLBChNXHuCHbTlWuAcmMNmQ/viewform">complete
rules
.


We encourage virtual reality and augmented reality game submissions that use the
Google VR SDK and the href="https://store.google.com/product/tango_tablet_development_kit?srp=/product/project_tango_tablet_development_kit">Tango
Tablet Development Kit
.


At the end of August, we’ll announce the group of indies to be featured at the
festival.


You can learn more about the event href="https://events.withgoogle.com/google-play-indie-game-festival/">here.
We can’t wait to see what innovative and fun experiences you share with us!


Android Wear 2.0 Developer Preview 2

Android Wear 2.0 Developer Preview 2


Posted by Hoi Lam, Android Wear
Developer Advocate


At Google I/O 2016, we launched the Android
Wear 2.0 Developer Preview, which gives developers early access to the next
major release of Android Wear. Since I/O, feedback from the developer community
has helped us identify bugs and shape our product direction. Thank you!


Today, we are releasing the second developer preview with new functionalities
and bug fixes. Prior to the consumer release, we plan to release additional
updates, so please send us your
feedback early and often. Please keep in mind that this preview is a work in
progress, and is not yet intended for daily use.

What’s new?



 public class MainActivity extends Activity {  
   ...    
   @Override /* KeyEvent.Callback */  
   public boolean onKeyDown(int keyCode, KeyEvent event) {  
     switch (keyCode) {  
       case KeyEvent.KEYCODE_NAVIGATE_NEXT:  
         Log.d(TAG, "Next");  
         break;  
       case KeyEvent.KEYCODE_NAVIGATE_PREVIOUS:  
         Log.d(TAG, "Previous");  
         break;  
     }  
     // If you did not handle, then let it be handled by the next possible element as deemed by  
     // Activity.  
     return super.onKeyDown(keyCode, event);  
   }  
 }  


Get started and give us feedback!



The Android Wear 2.0 Developer Preview includes an updated SDK with tools and
system images for testing on the official Android emulator, the href="https://store.google.com/product/lg_watch_urbane_2nd_edition_lte">LG Watch
Urbane 2nd Edition LTE
, and the href="https://store.google.com/product/huawei_watch">Huawei Watch.


To get started, follow these steps:

  1. Take a video tour
    of the Android Wear 2.0 developer preview
  2. Update to Android Studio v2.1.1 or later
  3. Visit the Android Wear 2.0 Developer
    Preview site for downloads and documentation
  4. Get the emulator system images through the SDK Manager or href="https://developer.android.com/wear/preview/downloads.html?utm_campaign=android wear_launch_preview2_071216&utm_source=anddev&utm_medium=blog">download the
    device system images from the developer preview downloads page
  5. Test your app with your supported device or emulator
  6. Give us feedback


We will update this developer preview over the next few months based on your
feedback. The sooner we hear from you, the more we can include in the final
release, so don't be shy!

Final Developer Preview before Android 7.0 Nougat begins rolling out


Posted by Dave Burke, VP of Engineering





As we close in on the public rollout of href="https://developer.android.com/preview/index.html?utm_campaign=android_launch_developerpreview5_071816&utm_source=anddev&utm_medium=blog">Android 7.0 Nougat
to devices later this summer, today we’re releasing Developer Preview
5
, the last milestone of this preview series. href="http://android-developers.blogspot.com/2016/06/android-n-apis-are-now-final.html">Last
month’s
Developer Preview included the final APIs for Nougat; this preview
gives developers the near-final system updates for all of the supported preview
devices, helping you get your app ready for consumers.


Here’s a quick rundown of what’s included in the final Developer Preview of
Nougat:

  • System images for Nexus and other preview devices
  • An emulator that you can use for doing the final testing of your apps to
    make sure they’re ready
  • The final N APIs (API level 24) and latest system behaviors and UI
  • The latest bug fixes and optimizations across the system and in preinstalled
    apps


Working with this latest Developer Preview, you should make sure your app
handles all of the href="https://developer.android.com/preview/behavior-changes.html?utm_campaign=android_launch_developerpreview5_071816&utm_source=anddev&utm_medium=blog">system
behavior changes in Android N
, like Doze on the Go, background
optimizations, screen zoom, permissions changes, and more. Plus, you can take
advantage of href="https://developer.android.com/preview/api-overview.html?utm_campaign=android_launch_developerpreview5_071816&utm_source=anddev&utm_medium=blog">new developer
features in Android N
such as href="https://developer.android.com/preview/api-overview.html?utm_campaign=android_launch_developerpreview5_071816&utm_source=anddev&utm_medium=blog#multi-window_support">Multi-window
support
, Direct Reply and other href="https://developer.android.com/preview/api-overview.html?utm_campaign=android_launch_developerpreview5_071816&utm_source=anddev&utm_medium=blog#notification_enhancements">notifications
enhancements
, href="https://developer.android.com/preview/api-overview.html?utm_campaign=android_launch_developerpreview5_071816&utm_source=anddev&utm_medium=blog#direct_boot">Direct
boot
, href="https://developer.android.com/preview/api-overview.html?utm_campaign=android_launch_developerpreview5_071816&utm_source=anddev&utm_medium=blog#emoji">new
emojis
and more.


Publish your apps to alpha, beta or production channels in Google
Play



After testing your apps with Developer Preview 5 you should publish the updates
to Google Play soon. We recommend compiling against, and optionally targeting,
API 24 and then publishing to your alpha, beta, or production channels in the
Google Play Developer Console. A great strategy to do this is using href="https://developer.android.com/distribute/engage/beta.html?utm_campaign=android_launch_npreview_061516&utm_source=anddev&utm_medium=blog">Google
Play’s beta testing feature
to get early feedback from a small group of
users -- including Developer Preview users — and then doing a staged rollout as
you release the updated app to all users.


How to get Developer Preview 5


If you are already enrolled in the Android
Beta program, your devices will get the Developer Preview 5 update right
away, no action is needed on your part. If you aren’t yet enrolled in Android
Beta, the easiest way to get started is by visiting href="https://android.com/beta">android.com/beta and opt-in your eligible
Android phone or tablet -- you’ll soon receive this preview update over-the-air.
As always, you can also download and href="https://developer.android.com/preview/download.html?utm_campaign=android_launch_npreview_061516&utm_source=anddev&utm_medium=blog#flash">flash
this update manually
. The Nougat Developer Preview is available for Nexus 6,
Nexus 5X, Nexus 6P, Nexus 9, and Pixel C devices, as well as General Mobile 4G
[Android One] devices.


Thanks so much for all of your feedback so far. Please continue to share
feedback or requests either in the href="https://code.google.com/p/android/issues/list?can=2&q=label%3ADevPreview-N">N
Developer Preview issue tracker
, href="https://plus.google.com/communities/103655397235276743411">N Preview
Developer community
, or href="https://plus.google.com/communities/106765800802768335079">Android Beta
community
as we work towards the consumer release later this summer. Android
Nougat is almost here!


Also, the Android engineering team will host a Reddit AMA on r/androiddev to
answer all your technical questions about the platform tomorrow, July 19
from 12-2 PM (Pacific Time)
. We look forward to addressing your
questions!

Wednesday, August 17, 2016

Protecting Android with more Linux kernel defenses

Protecting Android with more Linux kernel defenses



Posted by Jeff Vander Stoep, Android Security team



Android relies heavily on the Linux kernel for enforcement of its security
model. To better protect the kernel, we’ve enabled a number of mechanisms within
Android. At a high level these protections are grouped into two
categories—memory protections and attack surface reduction.

Memory protections



One of the major security features provided by the kernel is memory protection
for userspace processes in the form of address space separation. Unlike
userspace processes, the kernel’s various tasks live within one address space
and a vulnerability anywhere in the kernel can potentially impact unrelated
portions of the system’s memory. Kernel memory protections are designed to
maintain the integrity of the kernel in spite of vulnerabilities.

Mark memory as read-only/no-execute



This feature segments kernel memory into logical sections and sets restrictive
page access permissions on each section. Code is marked as read only + execute.
Data sections are marked as no-execute and further segmented into read-only and
read-write sections. This feature is enabled with config option
CONFIG_DEBUG_RODATA. It was put together by Kees Cook and is based on a subset
of Grsecurity’s KERNEXEC feature by Brad
Spengler and Qualcomm’s CONFIG_STRICT_MEMORY_RWX feature by Larry Bassel and
Laura Abbott. CONFIG_DEBUG_RODATA landed in the upstream kernel for arm/arm64
and has been backported to Android’s 3.18+ arm/href="https://android-review.googlesource.com/#/c/174947/">arm64 common
kernel.

Restrict kernel access to userspace



This feature improves protection of the kernel by preventing it from directly
accessing userspace memory. This can make a number of attacks more difficult
because attackers have significantly less control over kernel memory
that is executable, particularly with CONFIG_DEBUG_RODATA enabled. Similar
features were already in existence, the earliest being Grsecurity’s UDEREF. This
feature is enabled with config option CONFIG_CPU_SW_DOMAIN_PAN and was
implemented by Russell King for ARMv7 and backported to href="https://android-review.googlesource.com/#/q/topic:sw_PAN">Android’s
4.1
kernel by Kees Cook.

Improve protection against stack buffer overflows



Much like its predecessor, stack-protector, stack-protector-strong protects
against stack
buffer overflows
, but additionally provides coverage for href="https://outflux.net/blog/archives/2014/01/27/fstack-protector-strong/">more
array types
, as the original only protected character arrays.
Stack-protector-strong was implemented by Han Shen and href="https://gcc.gnu.org/ml/gcc-patches/2012-06/msg00974.html">added to the gcc
4.9 compiler
.


Attack surface reduction



Attack surface reduction attempts to expose fewer entry points to the kernel
without breaking legitimate functionality. Reducing attack surface can include
removing code, removing access to entry points, or selectively exposing
features.

Remove default access to debug features



The kernel’s perf system provides infrastructure for performance measurement and
can be used for analyzing both the kernel and userspace applications. Perf is a
valuable tool for developers, but adds unnecessary attack surface for the vast
majority of Android users. In Android Nougat, access to perf will be blocked by
default. Developers may still access perf by enabling developer settings and
using adb to set a property: “adb shell setprop security.perf_harden 0”.


The patchset for blocking access to perf may be broken down into kernel and
userspace sections. The href="https://android-review.googlesource.com/#/c/234573/">kernel patch is
by Ben Hutchings and is
derived from Grsecurity’s CONFIG_GRKERNSEC_PERF_HARDEN by Brad Spengler. The
userspace changes were href="https://android-review.googlesource.com/#/q/topic:perf_harden">contributed
by Daniel Micay
. Thanks to href="https://conference.hitb.org/hitbsecconf2016ams/sessions/perf-from-profiling-to-kernel-exploiting/">Wish
Wu
and others for responsibly disclosing security vulnerabilities in perf.

Restrict app access to ioctl commands



Much of Android security model is described and enforced by SELinux. The ioctl()
syscall represented a major gap in the granularity of enforcement via SELinux.
Ioctl command
whitelisting with SELinux
was added as a means to provide per-command
control over the ioctl syscall by SELinux.


Most of the kernel vulnerabilities reported on Android occur in drivers and are
reached using the ioctl syscall, for example href="https://source.android.com/security/bulletin/2016-03-01.html#elevation_of_privilege_vulnerability_in_mediatek_wi-fi_kernel_driver">CVE-2016-0820.
Some ioctl commands are needed by third-party applications, however most are not
and access can be restricted without breaking legitimate functionality. In
Android Nougat, only a small whitelist of socket ioctl commands are available to
applications. For select devices, applications’ access to GPU ioctls has been
similarly restricted.

Require seccomp-bpf



Seccomp provides an additional sandboxing mechanism allowing a process to
restrict the syscalls and syscall arguments available using a configurable
filter. Restricting the availability of syscalls can dramatically cut down on
the exposed attack surface of the kernel. Since seccomp was first introduced on
Nexus devices in Lollipop, its availability across the Android ecosystem has
steadily improved. With Android Nougat, seccomp support is a requirement for all
devices. On Android Nougat we are using seccomp on the mediaextractor and
mediacodec processes as part of the href="http://android-developers.blogspot.com/2016/05/hardening-media-stack.html">media
hardening effort
.

Ongoing efforts



There are other projects underway aimed at protecting the kernel:


Due to these efforts and others, we expect the security of the kernel to
continue improving. As always, we appreciate feedback on our work and welcome
suggestions for how we can improve Android. Contact us at href="mailto:security@android.com">security@android.com.

Tuesday, August 16, 2016

Announcing Android add-ons for Docs and Sheets




We know many of you consider your mobile device as your primary tool to consume business information, but what if you could use it to get more work done, from anywhere?

We’re excited to introduce Android add-ons for Docs and Sheets, a new way for you to do just that—whether it’s readying a contract you have for e-signature from your phone, or pulling in CRM data on your tablet for some quick analysis while waiting for your morning coffee, Android add-ons can help you accomplish more.


Get more done with your favorite third-party apps, no matter where you are


We’ve worked with eight integration partners who have created seamless integrations for Docs and Sheets. Here’s a preview of just a few of them:




  • DocuSign - Trigger or complete a signing process from Docs or Sheets, and save the executed document to Drive. Read more here.





DocuSign lets you easily create signature envelopes right from Google Docs



  • ProsperWorks - Import your CRM data to create and update advanced dashboards, reports and graphs on Sheets, right from your device. Read more here.

  • AppSheet - Create powerful mobile apps directly from your data in Sheets instantly — no coding required. Read more here.

  • Scanbot - Scan your business documents using built-in OCR, and insert their contents into Docs as editable text. Read more here.





You can find these add-ons and many more, including PandaDoc, ZohoCRM, Teacher Aide, EasyBib and Classroom in our Google Play collection as well as directly from the add-on menus in Docs or Sheets.







Try them out today, and see how much more you can do.





Calling all developers: try our developer preview today!


As you can see from above, Android add-ons offer a great opportunity to build
innovative integrations and reach Docs and Sheets users around the world.
They’re basically Android apps that connect with href="http://developers.google.com/apps-script?utm_campaign=android_discussion_googledocs_072816&utm_source=anddev&utm_medium=blog">Google Apps Script projects
on the server-side, allowing them to access and manipulate data from Google Docs
or Sheets using standard Apps Script techniques. Check out href="https://developers.google.com/apps-script/add-ons/mobile?utm_campaign=android_discussion_googledocs_072816&utm_source=anddev&utm_medium=blog">our
documentation
which includes href="https://developers.google.com/apps-script/add-ons/mobile/mobile-style?utm_campaign=android_discussion_googledocs_072816&utm_source=anddev&utm_medium=blog">UI
guidelines
as well as href="https://developers.google.com/apps-script/add-ons/mobile/?utm_campaign=android_discussion_googledocs_072816&utm_source=anddev&utm_medium=blog#see_what_you_can_make">sample
code
to get you started. We’ve also made it easy for you to publish your
apps with the Apps Script editor.


Android add-ons are available today as a developer preview. We look forward to
seeing what you build!

Expand Your Global Reach on Google Play With New Language and Country Analytics



With users in 190 countries around the world, Google Play offers you a truly
global audience for your apps and games. Localization is one of the most
powerful ways to connect with people in different places, which is why we
launched translation support for in-app purchase and Universal App Campaigns
earlier this year. With over 30 language translation options available via the
Developer Console, we updated our app translation service to help you select the
most relevant languages, making it quick and easy to get started.


With the launch of new language and country analytics, you gain access to app
install analysis on Google Play, including:

  • Information on the top languages and countries where apps have been
    installed, broken down to the level of your app’s category
  • The percentage of installs that come from users of those languages
  • Further information to help inform your go-to-market plans for these
    countries





To make ordering translations easier, we show language bundles that you can add
to your order in a single click.


To get started, select Manage translations -> Purchase
translations
from the Store Listing page in the href="https://play.google.com/apps/publish/">Google Play Developer Console.