我下载了ADT软件包(22.6.2).打开Android SDK Manager时,我看到SDK Tools的版本是22.3,升级可用于SDK Tools 22.6.2.我尝试先运行一个模拟器,这非常有效.之后我安装了SDK Tools 22.6.2以及其他API.当我再次尝试打开模拟器时,它无效.
我可以创建,编辑和删除AVD.但他们不会开始.在我击中之后launch,我得到了Starting Android Device屏幕,在酒吧填充,但没有任何反应.我尝试使用不同的目标,不同的设备,不同的RAM,但无济于事.
我试图杀死adb服务器并重新启动它.没有什么变化.当我尝试时adb devices,即使我在AVD管理器中制作它们,也没有设备显示出来.
我觉得问题与具有rev的SDK工具有关.22.6.2.因为当我使用全新安装(SDK Tools为22.3)时,一切正常.
任何人都知道一个解决方案,或者只回到SDK Tools 22.3?
编辑:这是在OS X 10.6.8上,不确定这是否值得一提.
编辑2:我很抱歉没有回复很长时间.无论如何,问题仍然没有解决.当我检查更新时,没有可用的.当我尝试安装新软件时,它告诉我已经安装了所有内容.我使用https以及http.我取消选中"在安装期间联系所有更新站点以查找所需的软件".我仍然不知道会出现什么问题.
从Android SDK Tools rev 17开始,Android模拟器支持使用硬件虚拟化功能(Intel VT,VT-x,vmx和AMD-V,SVM),这将加速基于x86的仿真器图像:http:// developer. android.com/guide/developing/devices/emulator.html#accel-vm
我安装了所有必要的组件:
然后我使用该图像创建了一个新的AVD,但我无法"感觉"到执行速度的任何差异.
因此我的问题是:如何确定是否使用了硬件虚拟化功能?
如果没有,需要做什么才能使用它?
我知道它是由BIOS启用的,因为我可以在VirtualBox中运行Windows 64位虚拟机.此外,我已使用Microsoft®硬件辅助虚拟化检测工具对其进行了验证.
我正在模拟器4.0.3,每当运行项目新的Android模拟器启动,以前的模拟器显示空白屏幕,即空闲屏幕无法正常工作.会有什么问题?我该如何解决?
重置adb时出错
[2012-05-11 16:54:11 - DeviceMonitor] Adb connection Error:An existing connection was forcibly closed by the remote host
[2012-05-11 16:54:11 - Unexpected error while launching logcat. Try reselecting the device.] An existing connection was forcibly closed by the remote host
java.io.IOException: An existing connection was forcibly closed by the remote host
at sun.nio.ch.SocketDispatcher.read0(Native Method)
at sun.nio.ch.SocketDispatcher.read(Unknown Source)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(Unknown Source)
at sun.nio.ch.IOUtil.read(Unknown Source)
at sun.nio.ch.SocketChannelImpl.read(Unknown Source)
at com.android.ddmlib.AdbHelper.executeRemoteCommand(AdbHelper.java:395)
at com.android.ddmlib.Device.executeShellCommand(Device.java:397)
at com.android.ddmuilib.logcat.LogCatReceiver$1.run(LogCatReceiver.java:102)
at java.lang.Thread.run(Unknown Source)
[2012-05-11 16:54:12 - DeviceMonitor] Connection …Run Code Online (Sandbox Code Playgroud) "emulator: warning: opening audio input failed"
Run Code Online (Sandbox Code Playgroud)
每次启动AVD时,上述消息都会显示在控制台中,然后仿真器不会发出声音.
我试图删除AVD并一次又一次地创建了一个新的,但它没有帮助解决这个问题.
我也曾在Google上搜索了很多次,但我发现没什么用处.
非常有趣的是,人们倾向于建议忽略这个问题,因为AVD在没有声音的情况下仍能正常工作.
但是我正在编写一个与声音相关的Android应用程序,我真的需要一个可行的解决方案来让AVD再次"说话".
非常感谢你.
我现在已经面对这个问题很长一段时间了.运行'adb devices'向我展示了一个额外的虚拟设备,尽管它被命名为emulator-5554.仅供参考,我也没有任何模拟器运行.
adb设备
附加
设备列表:xxxxxxx设备(实际设备)
模拟器-5554设备(虚拟设备显示为设备).
我该如何清理这个烂摊子?
我正在Android Studio中开发应用程序,我可以成功地在虚拟设备中运行它们.但是,在我自己的设备上运行应用程序(三星S3 GT-I9300)不起作用.
根据Google的文档(http://developer.android.com/tools/device.html),我试过这个:
android:debuggable="true".在Android Studio中,我将目标设备的编辑配置更改为USB设备.但我经常收到这样的信息:
等待设备.
找不到USB设备
我也安装了三星的Kies软件,用这个软件我可以通过USB连接我的手机.我也曾尝试adb devices在\sdk\platform-tools,但没有设备已列出.
我在模拟器上构建应用程序时似乎遇到此错误.我不知道它的原因是什么,它似乎影响了我的应用程序,导致我的应用程序在模拟器上崩溃.
模拟器:coreaudio:无法锁定audioInputDeviceIOProc
模拟器的声音:原因:参数无效
我在Android Studio中运行虚拟机.问题是它永远不会安装SD卡.在设置中,我尝试过工作室管理(100MB)以及自己创建一个:
$ ./mksdcard -l sdCard 100M sdcard.img
Run Code Online (Sandbox Code Playgroud)
该文件位于我的主文件夹中,具有R/W权限.
这是我的配置:
avd.ini.encoding=UTF-8
AvdId=DEVICEC_API_17
PlayStore.enabled=false
abi.type=x86
avd.ini.displayname=DEVICEC API 17
disk.dataPartition.size=800M
hw.accelerometer=no
hw.audioInput=yes
hw.battery=yes
hw.camera.back=emulated
hw.camera.front=emulated
hw.cpu.arch=x86
hw.cpu.ncore=4
hw.dPad=no
hw.device.manufacturer=User
hw.device.name=DEVICEC
hw.gps=no
hw.gpu.enabled=yes
hw.gpu.mode=auto
hw.initialOrientation=landscape
hw.keyboard=yes
hw.lcd.density=160
hw.mainKeys=no
hw.ramSize=1536
hw.sdCard=yes
hw.sensors.orientation=no
hw.sensors.proximity=no
hw.trackBall=no
image.sysdir.1=system-images/android-17/google_apis/x86/
runtime.network.latency=none
runtime.network.speed=full
sdcard.path=/home/user/sdcard.img
showDeviceFrame=no
skin.dynamic=yes
skin.name=800x600
skin.path=_no_skin
skin.path.backup=_no_skin
tag.display=Google APIs
tag.id=google_apis
vm.heapSize=48
Run Code Online (Sandbox Code Playgroud)
如您所见,hw.sdCard设置为YES.
老实说,我不知道在Logcat中寻找什么.过滤MOUNT我看到了这个:
08-14 17:45:55.544 1495-1508/system_process I/SystemServer: Mount Service
08-14 17:45:55.544 1495-1508/system_process D/MountService: got storage path: /mnt/sdcard description: USB storage primary: true removable: false …Run Code Online (Sandbox Code Playgroud) 在avd命令后,我在终端上挂了这个警告:
emulator: ### WARNING: /etc/localtime does not point to /usr/share/zoneinfo/, can't determine zoneinfo timezone name
所以,我想知道这是MacOS(10.13.2)还是Android Studio(最新版本)问题.
以及如何解决这个问题?
谢谢.
android-virtual-device android-emulator android-studio macos-high-sierra
我使用 android 10 [android Q,galaxy 10],
我使用 android studio 3.3,
使用 AVD,并制作了 api 29 [android 10] 虚拟电话。
在虚拟机上,我执行我的应用程序,然后,我启动其他应用程序,如日历、计算器。所以我的应用程序活动进入后台模式。
当我在 BroadcastReceiver 收到一条消息时。我调用 startActivity。
在这里,代码 --> 公共类 myReceiver 扩展了 BroadcastReceiver {}
public void onReceive(Context context, Intent intent)
{
Intent intentRun = new Intent(context, LoginSuccess.class);
intentRun.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TASK);
context.startActivity(intentRun);
}
Run Code Online (Sandbox Code Playgroud)
但 LoginSuccess 活动没有出现。[当我的应用程序处于后台模式时]
使用相同的代码,当我的应用程序处于前台模式时,LoginSuccess 活动显示得很好。
上图显示了我在广播接收器中调用 startActivity 之前的调用堆栈。
我已阅读有关 android 10 后台活动问题的指南。[developer.android.com/~~某个位置]
在引导线上,
我开始知道如果 Activity 存在于调用堆栈中,它甚至可以在后台模式下启动。
上面的代码,它尝试启动最近调用堆栈中存在的活动。
为什么 startActivity 调用在后台模式下失败?[也许不会失败,但无论如何没有激活到前台]