无法从 Eclipse 运行 android 2.2 模拟器

Posted

技术标签:

【中文标题】无法从 Eclipse 运行 android 2.2 模拟器【英文标题】:Unable to run android 2.2 emulator from eclipse 【发布时间】:2013-01-22 04:44:21 【问题描述】:

您好,我基本上刚刚开始为 android 构建应用程序,我一直在学习一些教程只是为了开始,但我的应用程序无法在 4.2 中运行。我收到消息“Unfrotunatley,您的应用程序已关闭...”。所以我创建了一个 android 2.2 模拟器,并且运行良好,但在 eclipse 中,它只是在 2.2 模拟器旁边显示“x”,而 4.2 模拟器显示完美。

我如何让 2.2 模拟器在 eclipse 上工作,我有 SDK 和所有这些,它只是不给我运行它的选项。不从 eclipse 启动时它工作正常。

另外,我知道这可以归类为另一个问题,但我的程序有 0 个错误,并且与我一直在关注的教程几乎相同。我试过调试它,它说“跳过了 42 帧。也许你的程序正在运行很多进程”,所以我通过了程序,实际上没有发生任何事情,除非我按下按钮。

logcat 错误:

01-22 04:55:12.697: E/ActivityThread(740): Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40cf1f08 that was originally bound here
01-22 04:55:12.697: E/ActivityThread(740): android.app.ServiceConnectionLeaked: Service  com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40cf1f08 that was originally bound here
01-22 04:55:12.697: E/ActivityThread(740):  at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
01-22 04:55:12.697: E/ActivityThread(740):  at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
01-22 04:55:12.697: E/ActivityThread(740):  at android.app.ContextImpl.bindService(ContextImpl.java:1418)
01-22 04:55:12.697: E/ActivityThread(740):  at android.app.ContextImpl.bindService(ContextImpl.java:1407)
01-22 04:55:12.697: E/ActivityThread(740):  at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
01-22 04:55:12.697: E/ActivityThread(740):  at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
01-22 04:55:12.697: E/ActivityThread(740):  at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
01-22 04:55:12.697: E/ActivityThread(740):  at com.android.emailcommon.service.AccountServiceProxy.getDeviceId(AccountServiceProxy.java:116)
01-22 04:55:12.697: E/ActivityThread(740):  at com.android.exchange.ExchangeService.getDeviceId(ExchangeService.java:1249)
01-22 04:55:12.697: E/ActivityThread(740):  at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1856)
01-22 04:55:12.697: E/ActivityThread(740):  at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
01-22 04:55:12.697: E/ActivityThread(740):  at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
01-22 04:55:12.697: E/ActivityThread(740):  at android.os.AsyncTask$2.call(AsyncTask.java:287)
01-22 04:55:12.697: E/ActivityThread(740):  at java.util.concurrent.FutureTask.run(FutureTask.java:234)
01-22 04:55:12.697: E/ActivityThread(740):  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
01-22 04:55:12.697: E/ActivityThread(740):  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
01-22 04:55:12.697: E/ActivityThread(740):  at java.lang.Thread.run(Thread.java:856)

我也经常这样:

01-22 05:00:10.832: W/Trace(740): Unexpected value from nativeGetEnabledTags: 0

【问题讨论】:

我什至不知道它是否适用于 2.x,我什至无法让 2.2 模拟器工作。 :c 可能是 2.2 模拟器中不存在的任何其他使用库或使用功能。 (比如相机或谷歌地图) 【参考方案1】:
Im also getting this frequently:

01-22 05:00:10.832: W/Trace(740): Unexpected value from nativeGetEnabledTags: 0

为避免这种情况,您可以通过以下方式将其过滤掉。

转到 DDMS-->从 Saved Filter 中选择您的包名称并双击它--> Inside by Log Message^(?!.*(nativeGetEnabledTags)).*$ --> 点击好的。

这就是你不会经常收到Unexpected value from nativeGetEnabledTags: 0这条线的所有内容。

【讨论】:

@ReallyGoodPie:欢迎您,但如果它对您有所帮助,您应该投票赞成这个答案。【参考方案2】:

Android SDK API 17 中存在一个错误,它会向 LogCat 发出警告消息,例如:

来自 nativeGetEnabledTags 的意外值:0

这使得很难看到真实的消息。较旧的 API 版本不会显示该消息。在修复错误之前,可以使用此过滤器抑制消息:

^(?!.*(nativeGetEnabledTags)).*$

这是最新版本的工具中引入的一个错误……Google 正在努力修复下一个版本。

【讨论】:

谢谢你,至少我的日志不会这么垃圾:)【参考方案3】:

试试这个方法

选择您选择的项目,转到顶部的“运行”菜单。打开“运行配置”并选择您的目标虚拟设备 android2.2 avd。点击应用,然后运行项目。

按照步骤进行

    启动 Eclipse 转到Windows->AVD管理器->选择虚拟设备->点击开始

    右键项目->选择运行方式->运行配置和虚拟设备相同

         Your application should load now
    

    查看此链接

Unexpected value from nativeGetEnabledTags: 0

【讨论】:

这是我尝试的第一件事,但我根本没有在那里显示。 您是否为 android 2.2 创建了 avd 嗯,我做到了,和你上次说的差不多。我更改了设备的名称,因为它有一个“。”在实际名称中,我认为它不会接受。我改了,还是不行。这是当前错误: 中的“android 8”中的未知目标我知道这个错误很愚蠢,因为我可以在不在 eclipse 中完美运行它 @ReallyGoodPie 试试上面的链接 @ReallyGoodPie k dude...根据我的意见,您只需卸载并重新安装。【参考方案4】:

请尝试将此添加到您的清单文件中

 <uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

【讨论】:

试试这个链接***.com/questions/13416142/…

以上是关于无法从 Eclipse 运行 android 2.2 模拟器的主要内容,如果未能解决你的问题,请参考以下文章

无法从 eclipse 上传文件到设备

eclipse 无法选择正在运行的 AVD

无法在只有 APK 的 Android Studio 上运行 Robotium

无法运行'Android项目 Error:A problem occurred configuring project

无法直接从 Eclipse 到设备调试 android 应用程序

Android adb“无法打开同步连接!”