How to install Play Store App on Android Studio Emulator Google API 23 - android-emulator

I selected this emulator from the newest version of Android Studio AVD,
Google API 23
I have selected the latest version of android API 23. Because it says "with Google APIs", I thought that it would actually include all the Google apps, including Play Store so that I can install apps like Facebook.
But I can't see any Google Apps in it.
How do I install Gapps on Android Studio Emulator with Google API23?

Starting from API24 Google publishes emulator images with Google Play. Download it from CLI:
yes | sdkmanager "system-images;android-24;google_apis_playstore;x86" \
"system-images;android-25;google_apis_playstore;x86" \
"system-images;android-26;google_apis_playstore;x86" \
"system-images;android-27;google_apis_playstore;x86" \
"system-images;android-28;google_apis_playstore;x86_64"
Or download it from AndroidStudio:

You can install a particular system image via the terminal, with the following command:
sdkmanager "system-images;android-30;google_apis_playstore;x86"
Trying to install the system images via the terminal, produced the following error:
'sdkmanager' is not recognized as an internal or external command,
operable program or batch file.
If you get this error, then you need to locate where sdkmanager is installed and add that folder to your PATH environment variable.
For me this was located under <AndroidSDK>\tools\bin
However, even after doing this I still got the following error.
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
... 5 more

Related

Issue in setting up the Android emulator with React native

I am fairly new to React native and trying to set up Android environment with Visual studio. All the installation has been fairly successful, however, when I try to run the sample app on the android emulator executing the npx react-native run-android command it shows below error -
'C:\Users\Home' is not recognized as an internal or external command,
operable program or batch file.
error Failed to launch emulator. Reason: Could not start emulator within 30 seconds..
Starting a Gradle Daemon, 1 incompatible and 1 stopped Daemons could not be reused, use --status for details
java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7
at org.codehaus.groovy.vmplugin.VMPluginFactory.<clinit>(VMPluginFactory.java:43)
at org.codehaus.groovy.reflection.GroovyClassValueFactory.<clinit>(GroovyClassValueFactory.java:35)
at org.codehaus.groovy.reflection.ClassInfo.<clinit>(ClassInfo.java:109)
However, when i execute adb devices on visual studio, it shows the list of emulator connected -
List of devices attached
emulator-5554 device
What could be the possible reason? Is this because my users name is Home PC? (Is this because there is a space in between) and it is not able to get the correct path?
This is because your java version is updated to the latest version and gradle is not supported with the installed version. what you can do is update the gradle as well
So go to gradle/wrapper folder inside the android folder
Edit gradle-wrapper.properties file and replace distributionUrl
with following value
https\://services.gradle.org/distributions/gradle-6.3-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-all.zip
I too faced the same issue.The problem is with the JDK. From JDK 14 i downgraded to JDK 11(LTS) version. And it worked.
Hope it helps.
Install Java 8 version, which is available Java 8 download
Gradle is not keeping up with the Java Latest versions, so roll back
to previous versions

SDK manager path [duplicate]

I am trying to build old unity version(v_4.6.3) project. but i have got a error. already i have got successful result, but current my sdk is updated with latest version.
http://screencast.com/t/u7lNiyoc
Here is my unity error log.
Error building Player: CommandInvokationFailure: Unable to list target platforms. Please make sure the android sdk path is correct. See the Console for more details.
C:\Program Files\Java\jdk1.8.0_66\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="E:/Temp/sdk\tools" -Dfile.encoding=UTF8 -jar "C:/Program Files (x86)/Unity/Editor/Data/BuildTargetTools/AndroidPlayer\sdktools.jar" -
stderr[
Exception in thread "main" java.lang.NoClassDefFoundError: com/android/utils/ILogger
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at SDKMain.main(SDKMain.java:128)
Caused by: java.lang.ClassNotFoundException: com.android.utils.ILogger
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more
]
stdout[
]
How can i fix this issues. Thank you for advances. Kind Regards.
The solution to this problem is constantly changing over time as Unity and the Android SDK change.
Note that his problem is presumably fixed in Unity 2017.1.
LATEST SOLUTION
1) For Windows, download "tools_r25.2.3-windows.zip" and unzip it.
2) For MacOSX, download "tools_r25.2.3-macosx.zip" and unzip it.
3) Add the path of the unzipped SDK to the Edit -->Preferences ---> External Tools --->SDK box.
STILL NOT WORKING?
Uninstall SDK Tools 25 and Android SDK Tools 26. Uninstall both SDK Platform-Tools and SDK Tools. Use version number below that.
OLD SOLUTION:
You did not setup your SDK properly.
Follow the steps below to setup your Android SDK.
1. Make sure that there are no spaces in your SDKpath. So create a folder called AndroidSDK in the C directory.
2. Copy your Android-sdk folder to the C:/AndroidSDK directory.
Now, your SDK path should look like this:
C:/AndroidSDK/Android-sdk
3. Update your Android SDK path in the Unity Editor.
Now, check if it works by trying to Build for Android again.
If it fails, continue from below
4. Download the latest Unity version.
5. Re-download SDK then copy the file to C:/AndroidSDK/Android-sdk.
6. Go back to Unity and Update the path
7. Build the Project for Android again, it will show an error and ask you to update SDK.
Click on the "Update Android SDK" buttom. Unity will Automatically update your SDK. Your SDK should then look like something below. Your problem should be gone by now.

(Unity android build error) Error building Player: CommandInvokationFailure: Unable to list target platforms issue [duplicate]

I am trying to build old unity version(v_4.6.3) project. but i have got a error. already i have got successful result, but current my sdk is updated with latest version.
http://screencast.com/t/u7lNiyoc
Here is my unity error log.
Error building Player: CommandInvokationFailure: Unable to list target platforms. Please make sure the android sdk path is correct. See the Console for more details.
C:\Program Files\Java\jdk1.8.0_66\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="E:/Temp/sdk\tools" -Dfile.encoding=UTF8 -jar "C:/Program Files (x86)/Unity/Editor/Data/BuildTargetTools/AndroidPlayer\sdktools.jar" -
stderr[
Exception in thread "main" java.lang.NoClassDefFoundError: com/android/utils/ILogger
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at SDKMain.main(SDKMain.java:128)
Caused by: java.lang.ClassNotFoundException: com.android.utils.ILogger
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more
]
stdout[
]
How can i fix this issues. Thank you for advances. Kind Regards.
The solution to this problem is constantly changing over time as Unity and the Android SDK change.
Note that his problem is presumably fixed in Unity 2017.1.
LATEST SOLUTION
1) For Windows, download "tools_r25.2.3-windows.zip" and unzip it.
2) For MacOSX, download "tools_r25.2.3-macosx.zip" and unzip it.
3) Add the path of the unzipped SDK to the Edit -->Preferences ---> External Tools --->SDK box.
STILL NOT WORKING?
Uninstall SDK Tools 25 and Android SDK Tools 26. Uninstall both SDK Platform-Tools and SDK Tools. Use version number below that.
OLD SOLUTION:
You did not setup your SDK properly.
Follow the steps below to setup your Android SDK.
1. Make sure that there are no spaces in your SDKpath. So create a folder called AndroidSDK in the C directory.
2. Copy your Android-sdk folder to the C:/AndroidSDK directory.
Now, your SDK path should look like this:
C:/AndroidSDK/Android-sdk
3. Update your Android SDK path in the Unity Editor.
Now, check if it works by trying to Build for Android again.
If it fails, continue from below
4. Download the latest Unity version.
5. Re-download SDK then copy the file to C:/AndroidSDK/Android-sdk.
6. Go back to Unity and Update the path
7. Build the Project for Android again, it will show an error and ask you to update SDK.
Click on the "Update Android SDK" buttom. Unity will Automatically update your SDK. Your SDK should then look like something below. Your problem should be gone by now.

sample-Groceries, Failed to find module: 'platform'

While i am following the nativescript with angular tutorial, my command prompt says "Successfully deployed on device with identifier 'emulator-5554'" but the emulator thrown the error below.
Error calling module function
Error: com.tns.NativeScriptException: Failed to find
module: 'platform', relative to: app/tns_modules/
com.tns.Module.resolvePathHelper(Module.java:159)
com.tns.Module.resolvePath(Module.java:6O)
com.tns.Runtime.runModule(Native Method)
com.tns.Runtime.runModule(Runtime.java:514)
com.tns.Runtime.run(Runtime.java:509)
com.tns.NativeScriptApplication.on
Create(NativeScriptApplication.java:17)
android. a pp.1 nst rum e ntat ion. call AppationOnCreate(lnstrumentation.java:1024)
android. app. ActivityThread.handleBindApplication(ActivityThread.java:5361).
Please help.
Thank you.
Delete platforms and node_modules folders and rebuild the application with the respective command for the platform you are using.
e.g. tns run android

Android SDK: How to set up old versions? eg. gingerbread

my goal here is to run an android emulator with various old versions of Android to test web apps. I am an android newbie. I have a Nexus 7 with Jellybean. The bugs on the web apps are reported in older versions.
So far I have;
Installed Android SDK on a Windows 8 desktop, created and run emulators but it's limited to Android 4.2 only (Jellybean)
I think the next step is to run the SDK Manager -- Ecplipse > Window > Android SDK Manager
Doing this reports that the Manager will show shortly -- nothing happens. In the console I get this error;
[2013-02-09 16:31:49 - SDK Manager] [SDK Manager] \adt-bundle-windows-x86_64\sdk\tools\lib\\find_java.exe was unexpected at this time.
Running find_java.exe from the command line gives:
D:\Program Files (x86)\adt-bundle-windows-x86_64>sdk\tools\lib\\find_java.exe
C:\Program Files\Java\jre7\bin\java.exe
D:\Program Files (x86)\adt-bundle-windows-x86_64>where java
C:\Program Files\Java\jre7\bin\java.exe
C:\Windows\System32\java.exe
I have updated the PATH environment var to include the jre7 directory as above, and added a ANDROID_SDK_HOME as D:\Users\myuser_000\Documents\Workspace -- devices I create appear in a .android\avd sub-directory.
I am running the SDK on Windows 8, installed in D:\Program Files (x86)\adt-bundle-windows-x86_64
Is running the SDK Manager the correct action?
Any ideas what would cause the SDK Manager not to display?
Thank you!
The error was in the android.bat file.
I edited the following to comment out the call to find_java.bat and hard coded to my installed version of Java.
rem Check we have a valid Java.exe in the path.
set java_exe="C:\Program Files\Java\jre7\bin\java"
rem call lib\find_java.bat
Hope this helps someone in the future.
Something that may have complicated the issue was windows 8 catching android.bat as an unsafe program and automatically stopping it. I saw this when manually trying to run the batch file.