25 Jun 2016
Accessory maker Incipio will soon purchase headphone manufacturer Skullcandy, padding out Incipio's wide range of accessories that they offer for smartphones. Incipio has already purchased other case makers and has licensing deals with other popular brands, so this move will only help solidify their position in the market. If you're curious about the deal itself, […]
Come comment on this article: Incipio will purchase Skullcandy for $177 million
25 Jun 2016 2:40am GMT
24 Jun 2016
The live-streaming hype really got going again at SXSW 2015 when Meerkat and Periscope became the go-to apps for people roaming around Austin, Texas. Over a year later, things have really changed. Meerkat is transitioning to a social network while Twitter's Periscope has to face a big challenger: Facebook. The social network built by Mark […]
Come comment on this article: Live-streaming is where YouTube is going next
24 Jun 2016 8:45pm GMT
Ready for the 2016 Summer Olympics? We all know that Samsung in. The company is signed through 2020, so we're bound to see promotional materials throughout August during Rio 2016. We actually got our first taste of Samsung-made Olympics content on Tuesday when the company published an inspiring video telling the story of a runner […]
Come comment on this article: Is Samsung prepping a new Galaxy for Rio 2016?
24 Jun 2016 8:01pm GMT
22 Jun 2016
Posted by Shanea King-Roberson, Lead Program Manager Twitter: @shaneakr Instagram: @theshanea
Do you have an idea for an app but you don't know where to start? There are over 1 billion Android devices worldwide, providing a way for you to deliver your ideas to the right people at the right time. Google, in partnership with Udacity, is making Android development accessible and understandable to everyone, so that regardless of your background, you can learn to build apps that improve the lives of people around you.
Enroll in the new Android Basics Nanodegree. This series of courses and services teaches you how to build simple Android apps--even if you have little or no programming experience. Take a look at some of the apps built by our students:
The app "ROP Tutorial" built by student Arpy Vanyan raises awareness of a potentially blinding eye disorder called Retinopathy of Prematurity that can affect newborn babies.
And user Charles Tommo created an app called "Dr Malaria" that teaches people ways to prevent malaria.
With courses designed by Google, you can learn skills that are applicable to building apps that solve real world problems. You can learn at your own pace to use Android Studio (Google's official tool for Android app development) to design app user interfaces and implement user interactions using the Java programming language.
The courses walk you through step-by-step on how to build an order form for a coffee shop, an app to track pets in a shelter, an app that teaches vocabulary words from the Native American Miwok tribe, and an app on recent earthquakes in the world. At the end of the course, you will have an entire portfolio of apps to share with your friends and family.
Upon completing the Android Basics Nanodegree, you also have the opportunity to continue your learning with the Career-track Android Nanodegree (for intermediate developers). The first 50 participants to finish the Android Basics Nanodegree have a chance to win a scholarship for the Career-track Android Nanodegree. Please visit udacity.com/legal/scholarship for additional details and eligibility requirements. You now have a complete learning path to help you become a technology entrepreneur or most importantly, build very cool Android apps, for yourself, your communities, and even the world.
All of the individual courses that make up this Nanodegree are available online for no charge at udacity.com/google. In addition, Udacity provides paid services, including access to coaches, guidance on your project, help staying on track, career counseling, and a certificate upon completion for a fee.
You will be exposed to introductory computer science concepts in the Java programming language, as you learn the following skills.
- Build app user interfaces
- Implement user interactions
- Store information in a database
- Pull data from the internet into your app
- Identify and fix unexpected behavior in the app
- Localize your app to support other languages
To enroll in the Android Basics Nanodegree program, click here.
See you in class!
22 Jun 2016 5:03pm GMT
21 Jun 2016
Posted by Dimitry Ivanov & Elliott Hughes, Software Engineers
As documented in the Android N behavioral changes, to protect Android users and apps from unforeseen crashes, Android N will restrict which libraries your C/C++ code can link against at runtime. As a result, if your app uses any private symbols from platform libraries, you will need to update it to either use the public NDK APIs or to include its own copy of those libraries. Some libraries are public: the NDK exposes libandroid, libc, libcamera2ndk, libdl, libGLES, libjnigraphics, liblog, libm, libmediandk, libOpenMAXAL, libOpenSLES, libstdc++, libvulkan, and libz as part of the NDK API. Other libraries are private, and Android N only allows access to them for platform HALs, system daemons, and the like. If you aren't sure whether your app uses private libraries, you can immediately check it for warnings on the N Developer Preview.
We're making this change because it's painful for users when their apps stop working after a platform update. Whether they blame the app developer or the platform, everybody loses. Users should have a consistent app experience across updates, and developers shouldn't have to make emergency app updates to handle platform changes. For that reason, we recommend against using private C/C++ symbols. Private symbols aren't tested as part of the Compatibility Test Suite (CTS) that all Android devices must pass. They may not exist, or they may behave differently. This makes apps that use them more likely to fail on specific devices, or on future releases - as many developers found when Android 6.0 Marshmallow switched from OpenSSL to BoringSSL.
You may be surprised that there's no STL in the list of NDK libraries. The three STL implementations included in the NDK - the LLVM libc++, the GNU STL, and libstlport - are intended to be bundled with your app, either by statically linking into your library, or by inclusion as a separate shared library. In the past, some developers have assumed that they didn't need to package the library because the OS itself had a copy. This assumption is incorrect: a particular STL implementation may disappear (as was the case with stlport, which was removed in Marshmallow), may never have been available (as is the case with the GNU STL), or it may change in ABI incompatible ways (as is the case with the LLVM libc++).
In order to reduce the user impact of this transition, we've identified a set of libraries that see significant use from Google Play's most-installed apps, and that are feasible for us to support in the short term (including libandroid_runtime.so, libcutils.so, libcrypto.so, and libssl.so). For legacy code in N, we will temporarily support these libraries in order to give you more time to transition. Note that we don't intend to continue this support in any future Android platform release, so if you see a warning that means your code will not work in a future release - please fix it now!
Table 1. What to expect if your app is linking against private native libraries.
|Libraries||App's targetSdkVersion||Runtime access via dynamic linker||Impact, N Developer Preview||Impact, Final N Release||Impact, future platform version|
|Private (graylist)||<=23||Temporarily accessible||Warning / Toast||Warning||Error|
|Private (all other)>||Any||Restricted||Error||Error||Error|
What behavior will I see?
Please test your app during the N Previews.
N Preview behavior
- All public NDK libraries (libandroid, libc, libcamera2ndk, libdl, libGLES, libjnigraphics, liblog, libm, libmediandk, libOpenMAXAL, libOpenSLES, libstdc++, libvulkan, and libz), plus libraries that are part of your app are accessible.
- For all other libraries you'll see a warning in logcat and a toast on the display. This will happen only if your app's
targetSdkVersionis less than N. If you change your manifest to target N, loading will fail: Java's System.loadLibrary will throw, and C/C++'s dlopen(3) will return NULL.
Test your apps on the Developer Preview - if you see a toast like this one, your app is accessing private native APIs. Please fix your code soon!
N Final Release behavior
- All NDK libraries (libandroid, libc, libcamera2ndk, libdl, libGLES, libjnigraphics, liblog, libm, libmediandk, libOpenMAXAL, libOpenSLES, libstdc++, libvulkan, and libz), plus libraries that are part of your app are accessible.
- For the temporarily accessible libraries (such as libandroid_runtime.so, libcutils.so, libcrypto.so, and libssl.so), you'll see a warning in logcat for all API levels before N, but loading will fail if you update your app so that its
targetSdkVersionis N or later.
- Attempts to load any other libraries will fail in the final release of Android N, even if your app is targeting a pre-N platform version.
Future platform behavior
- In O, all access to the temporarily accessible libraries will be removed. As a result, you should plan to update your app regardless of your
targetSdkVersionprior to O. If you believe there is missing functionality from the NDK API that will make it impossible for you to transition off a temporarily accessible library, please file a bug here.
What do the errors look like?
Here's some example logcat output from an app that hasn't bumped its target SDK version (and so the restriction isn't fully enforced because this is only the developer preview):
03-21 17:07:51.502 31234 31234 W linker : library "libandroid_runtime.so" ("/system/lib/libandroid_runtime.so") needed or dlopened by "/data/app/com.popular-app.android-2/lib/arm/libapplib.so" is not accessible for the namespace "classloader-namespace" - the access is temporarily granted as a workaround for http://b/26394120
This is telling you that your library "libapplib.so" refers to the library "libandroid_runtime.so", which is a private library.
When Android N ships, or if you set your target SDK version to N now, you'll see something like this if you try to use System.loadLibrary from Java:
java.lang.UnsatisfiedLinkError: dlopen failed: library "libcutils.so" ("/system/lib/libcutils.so") needed or dlopened by "/system/lib/libnativeloader.so" is not accessible for the namespace "classloader-namespace" at java.lang.Runtime.loadLibrary0(Runtime.java:977) at java.lang.System.loadLibrary(System.java:1602)
For more information about how to check if your app is using private symbols, see the FAQ on developer.android.com.
21 Jun 2016 8:33pm GMT
Posted by Dom Elliott, the Google Play team
|Today, the Playbook for Developers mobile app is now generally available for Android devices. The app helps you stay up-to-date with the features and best practices to grow your business on Google Play. Thanks to all our beta testers over the last six weeks whose feedback helped us tweak and refine the app in preparation for launch.
Here's how you read and watch content in the Playbook for Developers app:
The app supports Android 5.0 and above. If you're on an older device, check out our ebook, The Secrets to App Success on Google Play. We will be adding and updating content in the app to help you stay up-to-date and grow your business. Get the Playbook for Developers app today and then give us your feedback. The app is also available in the following languages: Bahasa Indonesia, Deutsch, español (Latinoamérica), le français, português do Brasil, tiếng Việt, русский язы́к, 한국어, 中文 (简体), 中文 (繁體), and 日本語.
This is the second app we've released for Google Play developers. Get the Google Play Developer Console app to review your app's performance statistics and financial data, get notified about your app's status and publishing changes, and read and reply to user reviews on the go.
21 Jun 2016 4:38pm GMT
10 Nov 2011
From the developer of Meganoid and Stardash comes a new action arcade game: INC! http://www.youtube.com/watch?v=9j5OEG-3RyM Get it from the...
10 Nov 2011 9:31am GMT
More than 1000 broadcast cameras for you online - the most incendiary models in Russia. 1000 girls, 1000, the temptations, 1000, full of desire - all...
10 Nov 2011 7:48am GMT
Hi Friends I decided to work with a tab layout application. Program consist of 3 tabs and a button. I like to place the button below the tab. ...
10 Nov 2011 5:20am GMT