timezone in android emulator - android

have tried to change the timezon in android-emulator but it doesn't work. I write the -timezone option in eclipse menu: Window - Preferences - Android - Launch - Default Emulator options:
-timezone Europe/Stockholm
I found the timezone info here.
In stockholm we add one hour to the british time. If my computer clock is e.g. 22.19 I also want the time in the android emulator to be 22.19. But it always show 21.19. How shall I give the -timezone arg to the emulator from inside eclipse so it works. I use winXp and Eclipse 3.5. And I have always restarted the emulator after each change of timezone.

emulator -timezone Europe/Stockholm
Should work (on Linux). No quotes needed.
Try this is an adb shell:
# date
Thu Dec 2 00:04:02 CET 2010
# date -u
Wed Dec 1 23:04:05 GMT 2010

Yes it works fine!
Firstly you have to shutdown you emulator.
Then in the menu clic "RUN" and then Run Configurations...
On the left, please select "Android Application" -> [name of your application]
On the right, clic the "target" tab, then scroll down and look for the "Additional Emulator Command Line Option" textbox. In that box you can specify:
-timezone [desired timezone]
Example:
-timezone Europe/Stockholm //
-timezone America/Argentina/Mendoza //
etc...

Duplicate:
https://stackoverflow.com/a/2993414/980687
Run>Debug Configurations/Run Configurations
Tab Target> Additional Emulator Command Line Options
-timezone America/New_York

Related

Android Emulator hosts file does not change

I am trying to edit android emulator hosts file. However when i push the changes it shows success but when I pull the file again, the changes are not there. It is same as previous. Can please anybody help with this.
You need to edit the /etc/host file like this :
There is an other way to manipulate the /etc/hosts (You need a Linux machine )
Use the system.img which come from Google
go to your Android SDK home
cd $ANDROID_HOME
find the right system.img for your emulator
sudo mount -w system-images/android-25/google_apis/x86_64/system.img
edit the /etc/hosts
sudo vi /mnt/etc/hosts
sudo umount /mnt
Create an emulator (from Android Studio)
ASD Manager
→ "Create Virtual Device"
→ Nexus 5X
→ Next
→ Tab x86 Images
→ Nougart - 25 - x86_64
→ Next
→ "AVD Name" : "Nexus 5X API 25 with WLAN hosts"
→ Finish
I have gone this way because emulator -writable-system -avd xx didn't work in my environment. Also mounting the system.img in my ~/.android/avd/xxxx directory didn't work anymore.

Could not launch './qemu/linux-x86_64/qemu-system-i386': No such file or directory

With 25rc1 of the SDK tools I am having a problem when starting the emulators from $PATH
➜ ~ which emulator
/home/ligi/bin/android-sdk/tools/emulator
➜ ~ emulator #M
Could not launch './qemu/linux-x86_64/qemu-system-i386': No such file or directory
➜ ~ /home/ligi/bin/android-sdk/tools/emulator #M
console on port 5554, ADB on port 5555
Anyone knows a workaround? I could write a script to start emulators and cd in tools before but perhaps there is a better solution.
I encounter this one in android studio 2.3 which use new path for the emulator so try the following:
do not use emulator executable in the: sdk-path/tools/ directory but instead use the one found in the : sdk-path/emulator/
and also remove or rename the emulator found in the sdk-path/tools directory.
and because android sdk shipped with it's own libstdc++.so.6 you need to do the following to avoid the libGL error:
cd $ANDROID_HOME/emulator/lib64/libstdc++
mv libstdc++.so.6 libstdc++.so.6.bak
ln -s /usr/lib64/libstdc++.so.6 $ANDROID_HOME/emulator/lib64/libstdc++
Try this, it work for me on Windows.
Tools -> Android -> SDK Manager -> SDK Tools -> Android Emulator
Then click on Apply.
If you're launching the emulator from command-line, try setting the current directory to your android sdk "tools" folder first.
This works for me as a workaround:
pushd ${ANDROID_HOME}/tools
emulator -avd ${EMULATOR_NAME} -wipe-data&
popd
This one works for me on MacOS Sierra.
Preference -> Appearance & Behavior -> System Settings -> Android SDK -> SDK Tools (tab)
Tick on Android Emulator and Apply
I had the Android Emulator up to date under SDK Tools. But I was still getting the error. Adding the following line to ~/.bash_profile solved the problem for me:
PATH=$ANDROID_HOME/emulator:$PATH
In Ubuntu 19.10!
With the environment variables already configured ($ANDROID_HOME), you should be able to list the AVDs, but if you are unable to start the AVD, do the following:
# Check the AVD target name
emulator -list-avds
# But to start do:
$ANDROID_HOME/emulator/emulator #avd_name
or
/home/$USER/Android/Sdk/emulator/emulator #avd_name
Make sure that ANDROID_EMULATOR_FORCE_32BIT is not set in your environment
In Virtual device configuration, set Emulated performance to Software GLES 2.0
yah my dns is blocked in the region i am visiting so i was searching for a way to add dns servers and start emulator at command line. default emulator in path did not work. instead go to your android SDK home and you'll see a emulator in there. use that emulator executable like this:
emulator -avd Nexus_5X_API_26 -dns-server 8.8.8.8,208.67.222.222,199.85.126.10,8.8.4.4
i think you can give 4 dns's. anyway this is a side note. back to the issue:
people here did not mention much that you need the -avd flag with it. wanted to point that out.
Do not use $ANDROID_HOME/tools/emulator, it will cause error when you launch every time unless you change dir.
There is a another emulator in $ANDROID_HOME/emulator.It is a good choice

Windows 8: emulator-arm.exe has stopped working

For the past few days I have been trying to get my Android AVD emulator (from the SDK) working, but none of the solutions posted previously have worked for me. I am running Windows 8.1 Pro, and the IDE I am using is Eclipse Juno. This is the crash report:
Problem signature:
Problem Event Name: APPCRASH
Application Name: emulator-arm.exe
Application Version: 0.0.0.0
Application Timestamp: 543837aa
Fault Module Name: ig4icd32.dll
Fault Module Version: 8.15.10.2555
Fault Module Timestamp: 4e973113
Exception Code: c0000005
Exception Offset: 005612cc
OS Version: 6.3.9600.2.0.0.256.48
Locale ID: 1033
Additional Information 1: 5861
Additional Information 2: 5861822e1919d7c014bbb064c64908b2
Additional Information 3: 84a0
Additional Information 4: 84a09ea102a12ee665c500221db8c9d6
This happens with every version of Android, every device, from 128-1024MB RAM; I have added libs to PATH, have toggled GPU and snapshot, turned off cameras, edited config.ini file. None of these solutions have worked for me.
UPDATE 1: When running a VirtualBox OpenGL test, VBoxTestOGL.exe crashes with the same fatal module and exception code. Also, Genymotion player.exe crashes on startup, but VirtualBox emulator launches (but cannot user input touches without Genymotion player.exe.
UPDATE 2: Gingerbread AVD I made: http://i.stack.imgur.com/YUXBY.png Also, no info about the AVD in the DDMS console/logs in Eclipse Juno.
UPDATE 3: New Gingerbread AVD according to #ChuongPham 's specifications: http://i.stack.imgur.com/QdtI7.png but still no luck running the emulator. Also, logcat does not even connect to the emulator; it seems like the emulator is terminated before it connects to ADB: http://i.stack.imgur.com/CdZPc.png
UPDATE 4: When running the AVD with the -verbose option, the emulator crashes after logging emulator: Initializing hardware OpenGLES emulation support with all emulated devices.
Android currently does not support JDK v8, you'll need JDK v7 (v7u67). So, to run Android:
Download JDK v7u67 from here. Note: Get the Windows x64 version for Windows 8.
After JDK installation, open your IDE (Eclipse, Android Studio, etc) and direct the IDE to use this new JDK. For example, in Eclipse select Windows | Preferences | Java | Installed JREs and select the JDK installed directory - not the Java Runtime (JRE) directory. The default JDK directory on a Windows computer will be something like "C:\Program Files\Java\jdk1.7.0_67". Note: You can have multiple JDKs installed on a computer, but your IDE must use JDK v7.
IMPORTANT: On Windows, specifying RAM option for an AVD greater than 1MB will not work. The RAM value has to be less than 1MB. Note: 1MB in Windows means 1,024 kilobytes.
UPDATE 1: If your AVD is not started normally, you can try the following commands (repeatedly) to force the ADB server to start:
Type adb kill-server
Then type adb start-server
Then type adb devices
The last command will tell you whether your device is connected to ADB or not. The ADB executable is located at /android-sdk/platform-tools directory.
Also, change the ADB's default timeout to more than five seconds (5000 milliseconds), for example, 30000 milliseconds (30 seconds). In Eclipse, you can access the ADB connection timeout option by going to Windows | Preferences | Android | DDMS.
UPDATE 2: If your AVD still crashed after trying the above fixes, then try this:
For the AVD, change the Device option to use WVGA resolution (less than 1280x800) instead of WXGA. Then, click OK to save the changes.
In Windows, open a command prompt and Run as Administrator.
In the command prompt, navigate to /android-sdk/tools/ directory.
Then type emulator -memory 512 -avd <avd_name>. Note: Substitute <avd_name> with the actual name of the AVD you want to start.
Lastly, if it still doesn't work, then dump the Eclipse Juno + Android bundle and download Eclipse Kepler or Luna separately from here. Then, download the Android SDK separately from here, and ADT here to build a new development environment to test AVD.
BUG: The issue you're facing could also be related to this unresolved Issue 28601.
UPDATE 3:
If you get the emulator: Initializing hardware OpenGLES emulation support error, then try the following fixes:
Add the path of OpenGLES drivers to your System Variable. You can access system variable via Start | Control Panel | System | Advanced System Settings | Environment Variables | Path | Edit and add C:\Program Files\android-sdk\tools\lib to the end of the Variable Value option and press OK to save.
Update the nVidia drivers of your graphic card via Windows Update.
Update the nVidia drivers of your graphic card via nVidia website.
BUG: OpenGLES error could be related to Issue 34233.

Android: how to change the time in emulator?

I've noticed that the time in my emulator for android projects is wrong. Its one hour behind.
How do I go about changing the time and can I do it in eclipse?
Run>Debug Configurations/Run Configurations
Tab Target> Additional Emulator Command Line Options
-timezone America/New_York
use this command
C:\> adb shell
#date –- 2009-10-01 14:24:59
20070325.123456
#date –s 20070325.123456
I believe the emulator is set to the GMT timezone by default. You can specify the timezone for the emulator with the -timezone parameter.
https://developer.android.com/studio/run/emulator-commandline.html
If you want to change date & time, from running emulator window go to:
Apps -> Settings -> Date & Time -> Disable Automatic date & time -> Set date & Set time
If you want to change timezone, from running emulator window go to:
Apps -> Settings -> Date & Time -> Disable Automatic time zone -> Select time zone
If you use IntelliJ you can do that from Run/Edit Configurations window.
Go to Emulator tab and add this to "Additional command line options":
-timezone Europe/Helsinki
Android document gives this info:
-timezone Set the timezone for the emulated device to , instead of the host's timezone. must be specified in zoneinfo format. For example: "America/Los_Angeles"
"Europe/Paris"
Zoneinfo format is also known as tz database. So to find you specific timezone, you can use the Wikipedia list here:
http://en.wikipedia.org/wiki/List_of_tz_database_time_zones
Increase emulator date by some certain hours, Perfectly working
Here i am increasing time by 4 hours.
adb root
adb shell "date date +09190400"
Month & Date : 0919(mmdd)
hours : 04
I have searched extensively, and it seems like the only option is to turn off the Auto-Set time in the emulator phone prefs, and manually set the timezone. I can't find any place to set emulator options from inside Eclipse/AVD Manager.
Set the time on the emulator via ADB:
Bash:
adb root
adb shell "date $(date +%m%d%H%M%G.%S)"
adb shell "am broadcast -a android.intent.action.TIME_SET"
Powershell:
$currentDate = Get-Date -Format "MMddHHmmyyyy.ss" # Android's preferred format
adb root
adb shell "date $currentDate"
adb shell "am broadcast -a android.intent.action.TIME_SET"
The am broadcast signal the clock to update in the status-bar, though its not needed according to my tests on emulator API-31.
The adb root lets following adb command execute with root-access, which is needed to set the date.
Thanks to RipTutorial
See also duplicate Stackoverflow with more info for special android-devices: Set date/time using ADB shell
refer to this page
http://ysl-paradise.blogspot.com/2008/09/android.html
in the comment part.
The question was 9 years ago, but these days (on a mac at least) you just change your mac's time in the OSX System Preferences Date & Time pane and it's immediately mirrored in the Android emulator.

How to increase storage for Android Emulator? (INSTALL_FAILED_INSUFFICIENT_STORAGE)

I get this sometimes(not often) for one of my projects, couple of classes only
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
How do I increase emulator's storage?
On Android Studio
Open the AVD Manager.
Click Edit Icon to edit the AVD.
Click Show Advanced settings.
Change the Internal Storage, Ram, SD Card size as necessary.
Click Finish.
Confirm the popup by clicking yes.
Wipe Data on the AVD and confirm the popup by clicking yes.
Important: After increasing the size, if it doesn't automatically ask you to wipe data, you have to do it manually by opening the AVD's pull-down menu and choosing Wipe Data.
Now start and use your Emulator with increased storage.
Update
This answer is, as I write this, nearly eight years old, and about five years stale. But it's still (as I write this) the "accepted" answer, because it answered the question when it was asked.
The newer answer, that applies to the newer Android Studio tools, can be found here: https://stackoverflow.com/a/35828035/62 -- it's a great answer with screen shots. If you're using Android Studio, ignore the Eclipse answer below.
Original Eclipse-based Answer
I was searching for the answer to this question, and was unsatisfied with the above answers. But then I found the answer, so here it is for future reference:
To summarize (and clarify), in Eclipse, go to "Debug Configurations". You can find that in the drop-down under the "debug" icon. Select "target", and select a preferred emulator target to launch. Then under "additional emulator command line options," add this:
-partition-size 1024
Then CLOSE the emulator (and remove any devices), and click the debug icon, which will launch the preferred emulator you selected. This is important: Eclipse needs to launch the debugger, not AVD.
That fixed the problem for me.
Add the following to the avd config.ini
disk.dataPartition.size=1024MB
Let me know if this works for you also.
I added in the line
Run AVD Manager
Select your AVD and click "Details..." button.
In my case AVD Manager sets disk size as
disk.dataPartition.size=4000M
This invalid value, disk is approx 500MB despite numbers specified.
Go to AVR's folder by path in "AVD details".
Edit it in config.ini to
disk.dataPartition.size=4000MB
and remove all .img files.
Just start emulator by command line as follow:
emulator -avd <your avd name> -partition-size 1024 -wipe-data
I was doing an install of an apk:
adb install /home/me/jones_android-arm.apk
And I was getting an error message telling me that
/data/local/tmp/jones_android-arm.apk
was too big. Using the sdk tools from r15, and ADT 15 I was able to use the AVD manager
to manipulate some of my existing emulator's settings:
Window-> AVD Manager -> (select you virtual machine) -> Edit
then going to the Hardware properties window just below "Skin:" I was able to select
with the Hardware: New button 'Ideal size of partition'. I was not, however, able to
set the value other than to '0'. Undaunted, I went to my ${HOME}/.android/avd directory
There was a 'MyVm.avd' directory. Going into that directory I found a 'config.ini'
file. There was the entry :
disk.dataPartition.size=0
I set this to:
disk.dataPartition.size=1024
.. then went back to the AVD Manager, selected MyVm, selected 'Start', opted to
wipe user data win the dialog following, and was able to run and install.
avd manager has an option "ideal size of system partition", try setting that to 1024MB, or use the commandline launch option that does the same.
fyi, I only encountered this problem with the 4.0 emulator image.
If you have the M1 Mac and the preview version of Android Emulator, then you'll need to go to /Applications/Android Emulator.app/Contents/MacOS/api30-gphone-arm64-v8a/config.ini (as an example) and change the disk.dataPartition.size property to your desired size.
something like this:
The reference is in the GitHub repo.
Best regards.
this problem comes with android 1.5 .. try 2.0 or 2.1 or 2.2
you need to increase virtual memory of emulator
How to increase virtual memory of emulator
emulator -avd "Emulator Name" -partition-size 2024
after then try to install your apk
To resize the storage of the Android emulator in Linux:
1) install qemu
2) Locate the directory containing the img files of the virtual machine. Something like ~/.android/avd/.avd and cd to it.
3) Resize the ext4 images: i.e. for growing from 500Mb to 4Gb execute
qemu-img resize userdata.img +3.5GB
qemu-img resize userdata-qemu.img +3.5GB
4) grow the filesystem:
e2fsck -f userdata.img
resize2fs userdata.img
e2fsck -f userdata-qemu.img
resize2fs userdata-qemu.img
5) For the sd card image, optional: rescue the data:
mkdir 1
mount -o loop sdcard.img 1
cp -a 1 2
umount 1
6) resize the image from 100Mb to Gb:
qemu-img resize sdcard.img +3.9GB
7) re-generate the filesystem:
mkfs.vfat sdcard.img
8) optional: restore the old data:
mount -o loop sdcard.img 1
cp -a 2/* 1
mount -o loop sdcard.img 1
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.junkfoodian"
android:installLocation="preferExternal" // this line can work for Installation error: // // INSTALL_FAILED_INSUFFICIENT_STORAGE
I'm a beginner, but I had that problem while playing around with the "Hello Grid View". I was trying to use my own photos, which were all very large in file size.
The quick fix was to reduce the number of photos, thus reducing the size of the APK file.
But, I guess my follow up question for anybody else who hits this thread is this: How do I attach large files like JPGs and MP3s to an app and make sure they save on the SD Card so the APK remains small?
Update your settings in AVD Manager and start the device by enabling 'Wipe user data'. This worked for me.
I guess you should restart the emulator with "emulator -wipe-data -avd YourAvdName" or check "Wipe User Data" in run configuration if you are using Eclipse.
The only time I've seen this happen it was when the host filesystem was basically out of space. Do you have much free space on the filesystem where the VM's filesystem is stored?
It is defenetly not a appropriate answer, but it is a small hint.
If you want to make use of static files in your App. You should put them as resources or as assets.
But, if U have memory concerns like to keep your APK small, then you need to change your App design in such a way that,
instead of putting them as resources, while running your App(after installation) you can take the files(defenately different files as user may not keep files what you need) from SD Card. For this U can use ContentResolver to take audio, Image files on user selection.
With this you can give the user another feature like he can load audio/image files to the app on his own choice.
you can start the one when selecting one item from the left tree "virtual device" in AVD manager dialog on the platform of eclipse, the start UI has the option "Wipe User Data"
The following approach worked for me
Navigate to your android SDK/tools folder in the terminal window (in case you didn't added the path for it)
Make sure the virtual device you're planning to clean is powered off.
Run the command "./emulator -wipe-data -avd YourAvdName" where YourAvdName is the name of your virtual android device
I am using VSCode and my AVD setup is from an older Android Studio setup that I had not used for a while.
I was able to fix this issue by finding the location where the AVD Images are located and then searching for files that had the text
disk.dataPartition.size
Run a find . -name "avd*" and a grep "disk" * once you find the directory for the AVD.
Modifying the disk.dataPartition.size value in the hardware-qemu.ini file worked for me.
The problem can be solved by changing your partition size of emulator.
Go to the your \Android\Sdk\emulator path and type the following command.
emulator -avd android_emulator_name -partition-size 1500 -wipe-data
Now it will work , you have increased the size of your partition size.
You can observe the change in size by using the following command before and after running the above command.
adb shell df
I'm using bitrise and I increased internal space by passing the parameter '-partition-size 2047' in the AVD step (only if you're using cli)
Example:
/home/user/Android/Sdk/emulator/emulator "#Pixel_6_API_31" "-verbose" "-show-kernel" "-no-audio" "-netdelay" "none" "-no-snapshot" "-wipe-data" "-gpu" "auto" "-no-window" "-no-boot-anim" "-camera-back" "none" "-camera-front" "none" "-partition-size" "2047"
Try choosing project -> clean. A simple clean may fix it up.

Categories

Resources