Android emulator control buttons (back, home, recent) are not working - android

I have installed android emulator through terminal
system-images;android-29;google_apis;x86_64 | 10 | Google APIs Intel x86 Atom_64 System Image
I have installed this sdk with the help of sdkmanager and I have created an avd with avdmanager. I am able to run my application in the avd, but back, home, task buttons are not working, there was no effect by clicking that buttons. I have been working on this and most of the answers suggested either enable focus on mouse hover feature in gnome-tweaks or edit hw.keyboard parameter in android/avd/config.ini file. focus on mouse hover feature didn't help me and I dont have avd folder in my android directory.
I am using Ubuntu 20.04 LTS

Go to AVD Manager and do a 'Cold boot'

The "cold boot" did the trick for me as well. For those who don't use Android Studio or AVD Manager UI, you can change this in the config.ini of the avd image.
The relevant properties:
fastboot.forceChosenSnapshotBoot = no
fastboot.forceColdBoot = yes
fastboot.forceFastBoot = no
On my Windows machine, that file can be found in C:\Tools\AndroidSDK\.android\avd\android_11_sdk_30.avd\config.ini, but of course this will vary on other machines...

Just goto the
C:\Users\YourUserName\.android\avd\Pixel_4_API_30.avd\
This folder have .lock file just delete it but before deleting it close the emulator and then delete it.
Restart your emulator and its working fine.

Related

Android 9.+ emulator does not start

All AVD images work on my machine except for Android 9.+ (Google Play) & Android 9.+ (Google APIs) (the Android Studio emulator for Android Q beta).
I just downloaded the most recent images. From android-Q/google_apis_playstore/x86/build.prop:
ro.system.build.version.incremental=5506116
ro.system.build.version.release=10
ro.system.build.version.sdk=28
I am using Android Emulator version 29.0.11.
However, when I start these up, I see the device frame with a black screen. I get no error message, just nothing. It stays like this indefinitely.
Is there any way to debug this or is this a common issue?
Update: on another device (same image), I got the following screen instead of a black screen, however, there is still nothing I can do:
You need to configure correctly the Hardware Acceleration for your Emulator. Please, follow these steps:
1) Install the Intel HAXM driver if you are on Windows and have Intel, follow these steps:
Open the SDK Manager.
Click the SDK Update Sites tab and then select Intel HAXM.
Click OK.
After the download finishes, run the installer. Typically, you can find the installer in the following location: sdk\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm-android.exe
Use the wizard to complete the installation.
After installing Intel HAXM, confirm that the virtualization driver is operating correctly by entering the following command in a Command Prompt window:
sc query intelhaxm
You should see a status message that includes the following information:
SERVICE_NAME: intelhaxm
...
STATE : 4 RUNNING
...
For Linux, check this link
For Mac, check this link
2) Open AVD Manager on Android Studio:
Edit the Virtual Device where you set target Android Q
Click Show Advanced Settings.
Set Graphics to Automatic or Hardware.
In my case all other emulators started, except Q. I have all needed SDK and AVDs.
But every time emulator didn't start without any error.
I saw Emulator in Android Studio doesn't start and found a way to understand a reason. I started from avd path:
D:\Android\emulator\emulator.exe -avd Pixel_2_API_29 -netspeed full -netdelay none
and got an error: PANIC: Broken AVD system path. Check your ANDROID_SDK_ROOT value [D:\Android]!. In PANIC: Broken AVD system path. Check your ANDROID_SDK_ROOT value I found that we should read config.ini inside 'Pixel_2_API_29.avd' folder and detect the line
image.sysdir.1=system-images\android-29\google_apis_playstore\x86\
I understood that I missed android-29 image in SDK path!
I knew that moved SDK and AVD folders from C:... to D:\Android, but SDK was kept in two folders.
And I forgot to change one system variable (ANDROID_HOME):
So I changed it to D:\Android and restarted the PC.
After restarting I deleted old SDK folder (in 'AppData\Local\Android'). Then I started again:
D:\Android\emulator\emulator.exe -avd Pixel_2_API_29 -netspeed full -netdelay none
Android 11 (R) emulator was not working for my case. I fixed it with the following steps.
Step 1:
Go to SDK manager -> SDK Platforms and install your required API level ( Like Android 11.0, Android 10.0, etc. For my case Android 11.0 was not installed that's why it was not working )
Step 2: Go to SDK manager -> SDK Tools and install Intel Emulator Accelerator (HAXM installed) if not yet installed. If you are a windows user then make sure that windows firewall is deactivated for a while otherwise it will not be installed and generate an error.
Step 3: Wipe data and Cold boot the device from ADV manager.
If the above steps are not worked then Invalidate caches and Restart your android studio as well as the PC.
I fixed it by reinstalling Android Studio entirely.
Actually, I just wanted to reinstall the Android SDK, however, you seem to need to install a stable version of Android Studio for that. After that, I set everything up the same way again and ran the beta version and now it works.
Had the same problem on macOS. Found out that I didn't have enough space on disk to create 'userdata partition'. So check that.

Waiting for Target Device to Come Online

I recently updated to Android Studio 2.3, and now when I try to run the application, the emulator does not come online. It times out after 300 seconds.
Additionally, The app has been experiencing a FATAL EXCEPTION ERROR (OOM), and I am not sure how to fix that either, or if that is part of the emulator problem.
Any help is much appreciated. Again, my knowledge in the program is very limited so if your answer can be kept simple, that would be great.
Following worked for me on Android Studio 3.x.
Step 1:
Open AVD Manager.
Step 2:
Right click and Wipe data for the virtual device you're testing on.
I too had the same problem, then I went to AVD manager and right click on the emulator and stopped it and I RUN the application again and this time it worked.
It may be a temporary solution but works for the time being.
Tools -> AVD manager -> right-click on the emulator you are using -> Stop
Now Run your application again.
Note: Sometimes closing the emulator directly is not working for the above-mentioned problem but stopping it from the AVD manager as mentioned is working.
In case you are on Mac, ensure that you exit Docker for Mac. This worked for me.
Three days on this, and I believe there's a race condition between adb and the emulator. On a request to run an app, with no emulator already running, you see the "Initializing ADB", then the emulator choice, it starts and you get "Waiting for target to come online". An adb kill-server, or a kill -9, or an "End Process" of adb with the task manager will cause adb to die, restart, your APK installs and you're good to go. It does seem funky to me that an "adb kill-server" causes adb to die and then restart here, but that's another mystery, maybe.
Another case is Android Emulator should be reinstalled. This can happen, when you install a higher version of Android Studio, then update SDK for it, and go back to previous one.
Tools - Android - SDK Manager - SDK Tools - Android Emulator -
uncheck, apply, check, apply
Disable Docker app if you have it (Mac users).
Restart emulator:
Tools - Android - AVD Manager
(or kill adb process in task manager).
Go to AVD Manager in your Android Studio.Right Click on your emulator,and then select wipe data.Then run your app again.
The emulator will perform a clean boot and then install your apk then your app will finally run.
Summary:AVD Manager---Right Click Emulator----Wipe Data----Run App Again
If the problem presists,then simply go back to your avd manager ,uninstall emulator,then add a new emulator.Once the new emulator is added,in your avd manager,run the emulator...Then run your app.
Its much simpler if you have an emulator already running from the onset before running your application for the first time
After trying all these solutions without success the one that fixed my problem was simply changing the Graphics configuration for the virtual device from Auto to Software (tried hardware first without success)
This solution works for me :
Tools -> AVD Manager -> click drop down arrow -> select Cold Boot Now
Below steps work for me
Close running emulator
Go to AVD Manager
Choose available emulator
In that action tab (last one), click on drop down arrow & select COLD BOOT NOW
Finally run your application
Seems like Android Studio (using version 3.5.1) gets into a weird state after a while. This worked for me.
File -> Invalidate Caches / Restart -> Invalidate and Restart
Go to AVD Manager right click on your device and select Wipe Data and Cold Boot Now.
For me it worked correctly.
After trying almost all the solutions listed above, what finally worked for me was to create a new virtual device using a "Google APIs" image instead of a "Google Play" image.
Seems that in my case the problem was in that the "Google APIs ARM EABI v7a System Image" wasn't automatically installed during installation of Android Studio.
After installing the image, the emulator began to work.
Screenshot of the SDK manager
Did not read all the answers. Anyway Accepted one didn't work for me. What did was upgrading the android studio to last stable version and then created a new virtual device. I guess my nexus 5p virtual device got out of sync with the android studio environment.
This worked for me on Android studio 4+ and Mac OS
Delete all AVD's that you currently have.
Go to Preferences > Appearance & Behavior > System Settings >
Android SDK > SDK Tools
Uninstall Android Emulator
Restart Android Studio.
Re-install Android Emulator from the same place.
Create a new emulator!
I discovered that having a running instance of Docker on my machine (OSX) prevented the Android Emulator from running (see Android Studio Unable to run AVD)
Previously, my emulator would appear to start, then fail before any device window was shown.
I also had to use 'kill -9' (as per #MarkDubya ) to get Android Studio to connect to the virtual device.
Like urupvog's answer, make sure that you aren't running any other virtual machines like VirtualBox. When I restarted my computer, AVD worked until I started Vagrant for backend development (then it wouldn't launch).
See Android emulator and virtualbox cannot run at same time for more info.
Check you don't have the deviced unauthorized, unauthorized devices reply the same error in the Android Studio, check the emulator once is on with the adb command.
$ adb devices
List of devices attached
emulator-5554 unauthorized
If you have of this way the emulator the Android Studio is waiting for be authorized and maybe this can solve the problem.
Authorized Devices
This is a error I have solved in Windows 10 with Android Studio 2.3.3
Fix for this issue is simple :
Go to SDK tools > SDK Tools
Check Android Emulator and click Apply
and sometimes you might see there's an update available next to it, you just need to let it finish the update
For those stuck on this problem on a device and not the emulator, make sure your app isn't set as the device owner.
Question is too old but may be helpful to someone in future.
After search many things, most of them is not worked for me. SO, as per my try This solution is worked for me. In short uninstall and install "Android SDK Tools" in Android SDK.
Few steps for that are below:-
go to "SDK Manager" in Android Studio
go to "SDK Tools" tab
Uninstall "Android SDK Tools" (means remove check(uncheck) ahead of "Android SDK Tools" and Apply then OK)
Close and Restart Android Studio
Install "Android SDK Tools" (means check ahead of "Android SDK Tools" and Apply then OK)
Image of Uninstall and Install Android SDK Tools again
The problem is that there is no link between ide and the emulator.
In our case - we lowered version of android for the app, that frustrated ide in emulator linking.
If we install Android 25 and bind project to it, and AVD Device on Android 25 as well - it links and apllies changes on the fly. If we downgrade to Android 14 and device on android 14 - it doesn't.
Used Android Studio 2.3.
To play with versions you can set in Gradle Scripts - build.gradle (Module: app):
android {
compileSdkVersion 25
defaultConfig {
minSdkVersion 15
targetSdkVersion 15
}
}
As a result app won't run on an Android 25 device with a message:
Installation failed with message Failed to finalize session : -26:
Package ru.asv.test new target SDK 15 doesn't support runtime
permissions but the old target SDK 25 does.. It is possible that this
issue is resolved by uninstalling an existing version of the apk if it
is present, and then re-installing.
WARNING: Uninstalling will remove the application data!
I also ran into this problem and probably found the solution that may help. The key is launching the AVD in the emulator first then run your App.
Following are the steps:
In the Your Virtual Devices screen, select the device you just created and click Launch this AVD in the emulator
Once the emulator is booted up, click the app module in the Project window and then select Run → Run
In the Select Deployment Target window, select the emulator and click OK.
For Linux users using KVM and facing this problem try setting the Graphics option on the Android Virtual Device to Software instead of Automatic or Hardware . As previously mentioned in this answer.
I can confirm that the method works for Arch Linux, Ubuntu 16.04, as well as windows with or without a proprietary graphics card using Android Studio version 2.3.1+
I am working on notebook, Windows 8. I solved this issue change mode from battery saving mode to balanced mode. Before that, an emulator didn't work and I see "Target Device to Come Online". Also didn't work Genymotion
I had a similar problem when updated my android studio. Somehow it changed my SDK path. I just changed it to my updated SDK path and it worked.
Android Studio -> File -> Settings -> Appearance & Behaviour -> System Settings -> Android SDK
Here you will find Android SDK location just click on edit link in front of that and browse and select the Android SDK from the file browser. Select and click on Apply.
Select AVD manager and start Emulator. This solution worked for me.
Go to terminal and type android avd. Select your AVD and select "Edit". Make sure you do not see No CPU/ABI system image available for this target - it will show in red font at the bottom. Change the target to the one that is available or download the ABI image. Sometimes, if you create an AVD from inside Android Studio, it does not ensure this requirement.
None of solutions above worked for me, so I had to wipe content of
C:\Users\your_name\.android\avd
and re-create emulated device
I've had the same problem (AVD not coming online) in a Linux system. In my case, I have solved it setting this environment variable:
$ export ANDROID_EMULATOR_USE_SYSTEM_LIBS = 1
This case is documented here: https://developer.android.com/studio/command-line/variables.html#studio_jdk
Finally, I solve this problem by setting the right export path in bash file:
export ANDROID_HOME=/Users/[username]/Library/Android/sdk

How to create AVD in eclipse?

I have a problem in creating a new android virtual device in eclipse (Eclipse Java EE).
the first problem is i cannot find the "AVD manager" button when i click in "Window" in eclipse.
i tried to access to the AVD manager by opening monitor.bat in tools folder
and the second problem was that when i fill the AVD window i see that OK Button is unavailable.
thanks in advance :)
You need to open "SDK Manager" and install an emulator image ("Android 4.4 Intel Atom x86 System Image" or something like that). "CPU/ABI" is a required field when you're creating a new emulator. You haven't chosen one (and probably you haven't installed one) - that's why OK button is disabled.

Not able to start AVD in Android studio

I am new to the android world, I am starting Clicking run button to start the AVD but nothing is happening.
If I am clicking Debug option then the AVD i have created does not show in the running device option.
In console this is shown
"C:\Users\shivamkumar07\Desktop\softwares\Android\adt-bundle-windows-x86_64-20140624\ADT Bundle\sdk\tools\emulator.exe" -avd Nexus_S_API_19 -netspeed full -netdelay none"
Here are few screen shots:
The AVD Which I have created:
I have used API 21 Android 5.0 and API 19 Android 4.4.2 but both are not working.
I have also set the target device in the Edit Configuration option, Here is the screen shot:
I am not able to understand how to test my project in the android virtual device? is there some problem with API level or something else? Since I am a beginner I am not familiar with many of the concepts of Android world.
Please help
Thanks in Advance!!
Go to SDK Manager and check at the very bottom if you have installed "Intel X86 Emulator Accelerator (HAXM Installer)". Install it if you don't have it.
Take into account that you'll need to run the downloaded file since it's an installator. If you mouse over the row on SDK Manager you'll be able to see the intallation path.
My issue was that I had to install Android Emulator from the SDK Download manager.
I was also getting the same issue. But Finally I have got the solution. You just need to follow the some steps:-
Goto file option in android studio and click on invalid cache and restart
Then rebuild the project
Then click on one of the option in available devices
Finally you will see to start the AVD automatically
Note :- Behalf of start the AVD from AVD Manager, start it from run.

Android emulator doesn't take keyboard input - SDK tools rev 20

I've upgraded the SDK tools to revision 20 (from 18) and since the upgrade, the emulator doesn't seem to accept input from laptop's keyboard. But only using the emulator's own 'soft' keyboard (that appears when an input field is focused).
I've tried reinstalling the SDK tools (and the whole SDK for that matter), uninstalled and reinstalled Eclipse Android plugins, re-created emulator devices. But none of that seem to help and its driving me mad. Its hopeless to key-in using a laptop's trackpad.
Has anyone encountered this problem?
Update
As of SDK rev 21 the Android Virtual Device Manager has an improved UI which resolves this issue. I have highlighted some of the more important configuration settings below:
If you notice that the soft (screen-based) main keys Back, Home, etc. are missing from your emulator you can set hw.mainKeys=no to enable them.
Original answer
Even though the developer documentation says keyboard support is enabled by default it doesn't seem to be that way in SDK rev 20. I explicitly enabled keyboard support in my emulator's config.ini file and that worked!
Add: hw.keyboard=yes
To: ~/.android/avd/<emulator-device-name>.avd/config.ini
Similarly, add hw.dPad=yes if you wish to use the arrow-keys to navigate the application list.
Reference: http://developer.android.com/tools/devices/managing-avds-cmdline.html#hardwareopts
On Mac OS and Linux you can edit all of your emulator configurations with one Terminal command:
for f in ~/.android/avd/*.avd/config.ini; do echo 'hw.keyboard=yes' >> "$f"; done
On a related note, if your tablet emulator is missing the BACK/HOME buttons, try selecting WXGA800 as the Built-in skin in the AVD editor:
Or by manually setting the skin in config.ini:
skin.name=WXGA800
skin.path=platforms/android-16/skins/WXGA800
(example is for API 16)
Confirmed. I had the same problem after upgrading to Tools version 20. I had to Edit the AVD to add an option as follows:
From Eclipse, Go to AVD Mananger.
Select the particular AVD and click on Edit
Go to the Hardware section, click on New.
Select the Property Name : Keyboard Support
By default, it is added with a value of 'no'. Just click on the value column and change it to 'yes'.
Click on Edit AVD again.
This will add a property hw.keyboard=yes in config.ini file for the AVD.
You also have to set hw.mainKeys = yes
In Android Studio, open AVD Manager (Tools > Android > AVD Manager).
Tap the Edit button of the emulator:
Select "Show Advanced Settings"
Check "Enable keyboard input"
Click Finish and start the emulator to enjoy the keyboard input.
Look in AVD Manager, select the AVD and click in Edit. In Hardware section: click in "New" and search for "Keyboard support" and add with OK button and set the value to "yes" and save changes with "Edit AVD"
Google wanted to give some more headache to the developers.
So, what you have to do now is edit your AVD and add "Keyboard Support" for it in the Hardware section and change the value to "Yes"
Add the following line
hw.keyboard=yes
to your AVD config file
~/.android/avd/<avd_folder>/config.ini
Restarting the emulator helps sometimes when typing is unavailable - despite keyboard input being enabled for your Android Virtual Device.
Just in case somebody finds it usefull.
I had a problem with the KEYCODE_DPAD_UP it belongs to the trackBall. to solve this change your avdfolder/config.ini hw.trackBall=yes and push DEL or F6
Here is some workaround that actually worked for me, it is the same solution as in the most popular answer - just
add hw.keyboard=yes to config.ini
but since this didn't work for me I additionally
renamed config.ini (any name will do) to something like consssssfig.ini
restarted emulator (obviously it didn't start)
renamed config.ini back again
(I am not sure if relevant) I added this new parameter (hw.keyboard=yes) at the beggining of config.ini file
Sometimes computer keyboard stops working on android emulator. Today I've noticed, that after pushing this button (that I marked with red arrow), keyboard starts working again (seems to be some issues with emulator window focus)
Look for the hidden .android folder in your user home folder. You might rename or delete this folder, recreate your AVD, and restart the emulator. It could be there is a .ini file in that folder that has that setting munged.
Recreating an AVD with the Hardware Keyboard + setting the boolean to true was the only solution that worked for me; the other two main solutions (terminal or editing an existing AVD via GUI) both resulted in software/emulator crashes on my Mac. Making a new AVD resulted in the keyboard working just fine.
I have used an emulator for API Level 23, which does not take keyboard input for installed apk.
So I have created new emulator for API Level 29, and then it works.
Following is the step to install new emulator.
Open "Android Virtual Device Manager"
Create new Virtual Device.
When you select a system image, please choose and download the last version(API Level29) on "Virtual Device Configuration" window

Categories

Resources