Getting started with GSI - android

I'd like to try out Android GSI, and I have a few questions about it.
Where can I get the latest prebuilt images? Do I have to build it from source code myself?
How can I tell if devices I own are supported by GSI?

You do not have to build GSI from source code locally:
Android Q preview GSI ( or future preview GSI ) could be downloaded from GSI preview site
Android 9 Pie GSI could be downloaded from GSI CI page
Android devices that fully support Treble could run GSI: devices launched with Android 9 and after are required to be fully Treble compatible. You could check your device launched OS version with:
adb shell getprop ro.product.first_api_level
if it returns a value >= 28, device could use GSI; currently installing GSI need device's bootloader unlocked, check your device's manufacturer for bootloader unlocking instructions.
Please note that GSI is for developers to perform earlier application design and validation on new Android OS; it is NOT suitable for normal device users: because pre-installed applications, like the phone dialer, may not function properly (could not make phone calls).

Related

Installing Open GApps on an Android Emulator

Using various emulators available through the AVD manager included with Android Studio, I've been attempting to install Open GApps without any luck. Generally, the procedure I've been taking is to download the appropriate package from Open GApps, push to the device with adb, then run the following command:
sh META-INF/com/google/android/update-binary 3 1 open_gapps-x86–6.0-mini-20170328.zip
or similar, as per this guide: Installing Google Apps on VS Emulator for Android
The installation script seems to finish running successfully, but on reboot, the device never gets past the boot screen.
My reason for trying to do this is because I need Google Play services on an emulator that isn't one of the two emulators that officially support it (Nexus 5/Nexus 5x I believe) because I need to use an emulator that supports Google Play and hardware GPU, which those two do not.
My exact steps:
Create a new AVD through the AVD manager included with Android Studio 3.1.2
I've tried multiple device types, for the sake of example I choose Pixel 2
My system image is Nougat, API 25, 7.1.1
In the advanced settings I choose hardware graphics, and increase the default storage size.
Once it's created, I launch the AVD and use Chrome to download the Open GApps app from here.
This app automatically downloads the proper .zip package by detecting the device it's on.
At this point I follow the instructions described in the link above to completion.
Please update your post with the version of Android Studio & Emulator versions you are using. If I'm not mistaken since Android Studio 2.3.2 and Emulator 26.0.2 began supporting google play and now most of the current images support google play native. I know for sure Android Studio 2.3.2, Emulator 26.0.2, and API 24 system image exists with google play. As far as hardware GPU support its hard to determine how to help without the current versions of the software you are running or have tried. Also what is the android version you are trying to target. Make sure you have the correct version of gapps for the Android OS you are emulating.
Also your question is a bit confusing because your link references Visual Studio Emulator but your question refers to Android Virtual Device Manager. Can you also update your question with the steps you took with either VS Emulator or AVD.
GAPP Downloads -> Downloads

Can't Install ARCore on emulator for Android Studio

I don't know if I'm allowed to ask this question but I really can't figure out how to use ARCore on Android Emulated Device.
According to the official guide I'm supposed to use API 8.1 on pixel/pixel 2 device in order to run any app which uses ARCore. Sadly those emulator don't come with the support for Play Store, and without Play Store I can't Instal ARCore on the device.
The device images that come with built in Play Store can't run ARCore instead.
I'm really confused about how am I supposed to test anything for ARCore in this way.
I need it to develop an app for a University program and I need to become familiar with Augmented Reality Development but I can't even get started because of this issue.
Just install to emulator ARCore_1_1_x86_for_emulator.apk. Just drug to emulator. Check this link https://github.com/google-ar/arcore-android-sdk/releases/tag/v1.1.0
Sergei's answer was right at the time, but the version of the ARCore app in his link (v1.1.0) is now too old. The following worked for me (after many false starts):
VIRTUAL DEVICE SPECIFICATIONS
Device: Pixel API 27
System image: Oreo / API Level 27 / ABI x86 / Android 8.1 (Google Play)
LINK TO ARCORE APK:
https://www.apkmirror.com/apk/google-inc/arcore/arcore-1-5-18091013-release/arcore-1-5-180910139-android-apk-download/download/
Download the ARCore APK to your desktop. In Android Studio, set up and then start the virtual device as specified above, open the Play Store app on it and sign in. Then drag the ARCORE APK file onto the virtual device; it should silently install. Finally, run hellosceneform on the virtual device.
For using an emulator, at first, you have to create a virtual device with AR support. I'm running Android Studio 3.3.2 on macOS Mojave.
You can follow the Android Studio instructions to Create a Virtual Device with AR support.
I created two virtual devices: the first is for Google Pixel 2 and the second is for Huawei P Smart 2019.
Go to Tools – AVD Manager main menu and create you AVD. My window looks like this:
Make sure that Camera Back is set to VirtualScene.
Here are some steps you have to do in order to get a working emulator:
Set up Android Debug Bridge. I set up adb for Mac.
Download ARCore_1.8.0.x86_for_emulator.apk from GitHub repository.
Run your AVD.
Type in Terminal the following command (to be sure that the port is 5554):
adb devices
Result:
// emulator-5554 device
Go to the folder where ARCore_1.8.0.x86_for_emulator.apk is located. For instance:
cd ~/Desktop
Type in Terminal for installing ARCore for AVD while the virtual device is running:
adb install -r ARCore_1.8.0.x86_for_emulator.apk
Repeat previous steps for additional AVDs you’d like to use.
Delight!
Hope this helps.

Unable to publish directly to Android device, stuck on “Uninstalling…” within IntelliJ IDE

I am publishing an Adobe Air App to my Android device using IntelliJ but am getting stuck. I am able to build an APK, move it to my device, and install it without problems. The trouble comes when I attempt to publish the app directly to the device.
First I get a request to install the Air Runtime even though its already installed, then I get a couple quick dialogs that come and go until I see "Uninstalling MobileTestAir" (MobileTestAir is the name of the app). The dialog doesn't go away, and IntelliJ is not successful in uninstalling the App.
Obviously there is a problem communicating with the device, but I am unsure how to correct this or which party involved to blame.
I'm using:
IntelliJ 12
Adobe Air SDK, packaged within Apache Flex 4.91 (Air version 3.4)
Nexus 7 2013 version, unrooted Android 4.3
Windows 8 with the Google USB drivers installed
current Android SDK installed
Update: I have attempted to apply a fix to work with 4.2.2 (what my phone runs) and am getting the following when I test the connection to my device with the command adb devices:
adb server is out of date. killing...
ADB server disk ACK
* failed to start daemon *
error:
(no error is shown)
This may be the root cause.
This might be an issue with Android 4.2, which added a security check before allowing installation of apps over USB.
Check out: Launching to device on 4.2 Jelly Bean
At least that was the case for me.
As the above answer is correct, I would like to specify exactly what I did to make it work
My IntelliJ 12 is configured to work with a Flex SDK under [FLEX-SDK]
My Android SDK is under [ANDROID-SDK] (I actually didn't even have an Adnroid SDK installed before this issue... :))
I replaced 5 files in directory:
[FLEX-SDK]\lib\android\bin (back it up for safety!)
taken from the Android SDK:
[ANDROID-SDK]\platform-tools\AdbWinUsbApi.dll
[ANDROID-SDK]\platform-tools\adb.exe
[ANDROID-SDK]\platform-tools\AdbWinApi.dll
[ANDROID-SDK]\build-tools\19.0.1\aapt.exe
[ANDROID-SDK]\build-tools\19.0.1\lib\dx.jar
I then made sure (and killed) all adb.exe processes running in the background, and started my Flex AIR application - the Nexus7 showed up some security question, which I approved, and the app started...
Hope it helps
Eyal
It is a flex problem. The adt binaries bundled with it are stale.
Download the latest AIR version and copy it into your FLEX folder.
for further details see:
http://help.adobe.com/en_US/air/build/WS2d8d13466044a7337d7adee012406959c52-8000.html
Erez

Debugging android apps on the kindle fire

Is debugging Android applications remotely from eclipse supported for Kindle Fire platform?
According to Amazon's FAQ on Kindle Fire, Kindle Fire has USB debugging enabled by default. To connect Kindle Fire to your Android Debug Bridge (ADB) follow the instructions in this PDF.If you are working with Windows 7 you will need to download and use this driver. They are also providing USB drivers for download for Windows 7 PC. Moreover, we can also emulate Kindle Fire specs on Android emulator by using the following parameters.
Width: 600px
Height: 1024px
Abstracted LCD Density: 169
Target: Android 2.3.4 - API Level 10
RAM: 512 MB
They don't offer separate developer devices. You can use the Kindle Fire devices which you can buy online.
After installing the device driver, I had to modify your adb_usb.ini
Open the C:\Users\< your-login >\.android\adb_usb.ini file for editing
Add 0x1949
Save the file
It's also possible to easily install an unsigned APK of your app for testing: http://androidforums.com/amazon-kindle-fire/448193-install-any-app-kindle-fire.html
I found that this post is helpful enable usb debugging. Although it is not as simple as 1,2 3. There are a number of steps involved to enable it. But it can be done. http://www.freerepairguide.com/kindle-fire-enable-usb-debugging.html
One drawback to debugging on Fire that you do not find on other devices - when your computer is connected to the Fire device it has blocked the I/O Socket. If your app downloads any files while it is running you will receive an alert that the file could not be downloaded but the debug error in the log will actually show that there was an I/O error. Unplugging the USB cable and attempting to download again will work, but when you plug back in you're back to square one with it wanting to install your app all over again.
Keep in mind that your app target AIR version MUST be no greater than version installed on KF.
Otherwise you have to update AIR on KF. (I've answered here how to do it)

nook tablet sdk and android sdk

I was taking a look at the nook developer site on barnesandnoble.com and noticed that their claim is:
The NOOK Tablet SDK contains the following components:
Android Virtual Device (AVD) Emulator
Android Debug Bridge (ADB)
configuration settings
I was wondering if that means that everything else is exactly the same as the android sdk except the emulator plugin and the adb settings?
Thanks
You are correct - it is similar to the LG, Sony, Motorola SDK add-ons that are loaded as part of the official Android SDK.
The current links are below (but note that these seem to change quite often and are correct as of Jan 2012 - register and check with NOOK regularly).
[NOOK Tablet, API 10] http://su.barnesandnoble.com/nook/sdk/Nook_Tablet_addon.xml
[NOOK Color, API 8] http://su.barnesandnoble.com/nook/sdk/addon.xml
Once installed via android sdk manager (use Tools >> Manage Add-on Sites ), it should automagically update ADB drivers on Linux/Mac Osx and have emulators available via AVD.
You can run "android update adb" in order to get ADB functioning. I havent tested in Windows but this should be similar.
Do you mean the emulator or the device itself? The emulator is an approximation of the real hardware, but I don't think it includes all of the real software and configuration.
The emulator operates closely to a normal AVD, but with a different skin and different setup for Nook-specifics (e.g. /media is available to write). However, some operations will appear to work in the emulator but cause a failure on a real device (or at least the QA testing). Some of the Nook-specific workarounds won't work on the emulator (e.g. calling the Nook intent for wallpaper manager or the Nook store).

Resources