Articles of android emulator

有没有办法在AVD模拟器上模拟Android操作系统升级方案?

我一直在尝试模拟一个场景,我想在操作系统更新后查看我的Android应用程序的行为方式。 但是在我可以运行实际操作系统更新方案的那一刻我无法访问物理设备,所以我不得不求助于在Android模拟器(AVD)上尝试它。 有没有办法可以在AVD上更新操作系统,就好像它是真正的手机一样,并且能够看到我的应用程序的行为方式? 我本质上想要测试的是: 假设我在设备上安装了API级别为21的android。 我安装了一个带有maxSdkVersion 21的应用程序。 现在我的设备升级到API级别22.我的应用程序会发生什么? 操作系统是否会默默地将我的应用程序卸载并保持这种状态? 操作系统是否会检查Play商店是否可以使用支持的SDK级别构建我的应用程序,然后下载并安装它? 操作系统是否至少会给我一个视觉警告或提示该特定应用程序在设备上不兼容,并告诉我接下来我能做什么? Android Developer Docs建议使用maxSdkVersion不是一个好主意,因为在某些情况下会发生卸载。 在Google Play上发布了在其清单中声明maxSdkVersion =“5”的应用程序。 设备运行Android 1.6(API级别4)的用户下载并安装应用程序。 几周后,用户会收到Android 2.0(API级别5)的无线系统更新。 安装更新后,系统会检查应用程序的maxSdkVersion并成功重新validation它。 应用程序正常运行。 但是,一段时间后,设备会收到另一个系统更新,这次是针对Android 2.0.1(API级别6)。 更新后,系统无法再重新validation应用程序,因为系统自身的API级别(6)现在高于应用程序支持的最大值(5)。 系统会阻止应用程序对用户可见,实际上将其从设备中删除。 警告:不建议声明此属性。 首先,没有必要将属性设置为阻止将应用程序部署到Android平台的新版本上的方法。 根据设计,该平台的新版本完全向后兼容。 您的应用程序应该在新版本上正常运行,前提是它只使用标准API并遵循开发最佳实践。 其次,请注意,在某些情况下,声明属性可能会导致在系统更新到更高的API级别后将应用程序从用户的设备中删除 。 大多数可能安装应用程序的设备将通过无线方式定期进行系统更新,因此在设置此属性之前,应考虑它们对应用程序的影响。 我还想弄清楚接下来会发生什么。 什么“在某些情况下”本质上意味着什么?

支持arm for apk在为X86构建的android模拟器上

我使用Android Studio for X86 cpu arch(CPU / ABI = X86_64)创建了一个Android模拟器,因为它在我的Mac或Linux机器上是非常快的X86。 但是我需要在它上面安装一个arm7 apk,它失败了,因为模拟器是为x86构建的,并且出现了预期的错误。 失败[INSTALL_FAILED_NO_MATCHING_ABIS] 我没有为X86 arch重新编译apk的源代码。 在Genymotion中我们使用ARM转换器并且它工作正常,但我们仅限于针对此特定用例的android AVD仿真器。 是否有类似的(ARM转换器)x86 AVD Android仿真器? 我不想为arm7构建模拟器,因为它在我的mac / linux机器上慢了10倍。 非常感谢。

生成的system.img未在模拟器上运行

我想为Android电视制作自定义ROM。 我按照AOSP网站上给出的步骤使用以下命令下载了源代码: repo init -u https://android.googlesource.com/platform/manifest -b master repo sync -j16 -c source build/envsetup.sh lunch aosp_x86-eng 要构建系统映像,我使用以下命令: make -j16 它正在使用最新的Q版本来构建: PLATFORM_VERSION_CODENAME=Q PLATFORM_VERSION=Q TARGET_PRODUCT=aosp_x86 TARGET_BUILD_VARIANT=eng TARGET_BUILD_TYPE=release TARGET_BUILD_APPS=LiveTv TARGET_ARCH=x86 TARGET_ARCH_VARIANT=x86 HOST_ARCH=x86_64 HOST_2ND_ARCH=x86 HOST_OS=linux HOST_OS_EXTRA=Linux-4.4.0-130-generic-x86_64-Ubuntu-16.04.4-LTS HOST_CROSS_OS=windows HOST_CROSS_ARCH=x86 HOST_CROSS_2ND_ARCH=x86_64 HOST_BUILD_TYPE=release BUILD_ID=OC-MR1 OUT_DIR=out 构建总是成功的。 system.img和ramdisk.img也会生成。 我想在模拟器上测试系统映像。 我用下面的命令: ./emulator -avd tvrom -sysdir out/target/product/generic_x86/ -system out/target/product/generic_x86/system.img -ramdisk out/target/product/generic_x86/ramdisk.img -data out/target/product/generic_x86/userdata.img -kernel prebuilts/qemu-kernel/x86/kernel-qemu […]

Android Emulator崩溃与运行时错误r6025 Pure虚函数调用

我的Android模拟器正在关闭此错误消息 运行时错误r6025纯虚函数调用 它经常发生,我该怎么做才能克服这个错误。对此的任何帮助都是赞赏的。

猴子在android模拟器上给出一个奇怪的错误

我使用以下指令让猴子在我的应用程序上运行(通过android模拟器): Monkey -p -v 5000 我收到以下错误: 01-28 11:45:55.392: ERROR/MediaPlayerService(34): error: -2 01-28 11:45:55.392: ERROR/MediaPlayer(58): Unable to to create media player 01-28 11:45:58.783: ERROR/MediaPlayerService(34): error: -2 01-28 11:45:58.783: ERROR/MediaPlayer(58): Unable to to create media player 01-28 11:46:13.742: ERROR/MediaPlayerService(34): error: -2 01-28 11:46:13.752: ERROR/MediaPlayer(58): Unable to to create media player 这种情况每隔几秒就会一次又一次地发生,并且是唯一发生的错误。 这很奇怪,因为我的应用程序根本没有触及任何媒体播放器function。 这是一个简单的笔记/待办事项应用程序。 任何洞察猴子触摸的是什么导致错误以及我能做些什么来防止它? 或者可以安全地忽略它吗? 谢谢! 编辑:我想我find了问题的根源。 […]

Geo Fix命令不会通过高度

在Android 2.2 Emulator上,“geo fix”命令似乎无法正常工作。 模拟器响应“OK”,并在我的程序中正确调用onLocationChanged() 。 但是, Location对象似乎并不完整 – 它可以很好地记录纬度和经度,但它不包含高度读数: hasAltitude()返回false 。 有什么想法吗? 示例模拟器命令: geo fix -74 40.75 500 geo fix -77 39 400.0 代码段: public void onLocationChanged(Location loc) { System.out.println(“onLocationChanged Called”); if (loc.hasAltitude()) { double newalt = loc.getAltitude(); System.out.println(“new altitude: ” + newalt); gps[ALTITUDE] = newalt; } else { System.out.println(“No altitude fix”); } gps[LONG] […]

我怎样才能运行多台Andy机器

我读到我可以在以下链接中运行多台Andy机器http://andysupport.s3.amazonaws.com/AndyOSFAQ44v1.pdf但我无法打开Andy Launcher 我试图在任务栏中双击HandyAndy的图标,但它不起作用

模拟器AVD仅在27.0.2之后具有白屏

昨天我将模拟器更新到27.0.2,今天更新到27.0.3 https://developer.android.com/studio/releases/emulator.html 但是在27.0.2之后,任何版本的Android和Device的所有Emulator都会显示白屏。 我真的很绝望,我不知道怎么做。 白屏avd 更新今天

我的android 4.2.2模拟器中的状态栏坏了

今天我发现android 4.2.2模拟器中的状态栏坏了。我不能把它拉下来。 我不知道发生了什么。

Android 2模拟器通信

我是android的新手,想要在两个模拟器之间创建一个简单的游戏。 仿真器1可以将字符串发送到仿真器2,仿真器2可以将字符串发送回仿真器1。 因为我不知道,有人可以告诉我如何解决这个问题。 谢谢。