2

在 Windows 7 64 位上,运行 Eclipse 3.6 64 位、JDK (jdk1.6.0_23) 64 位和 Android 2.3(位?),通过 Eclipse 的 Run|Run (Ctrl+F11) 运行程序会调用 android 模拟器,但不会在模拟器上安装 .apk (当然也不会运行它)。

(更新,回答@Computerish 的问题)我在 Eclipse 控制台得到的只是:

[2010-12-16 10:23:33 - HelloAndroid] ------------------------------
[2010-12-16 10:23:33 - HelloAndroid] Android Launch!
[2010-12-16 10:23:33 - HelloAndroid] adb is running normally.
[2010-12-16 10:23:33 - HelloAndroid] Performing com.example.helloandroid.HelloAndroid activity launch
[2010-12-16 10:23:33 - HelloAndroid] Automatic Target Mode: launching new emulator with compatible AVD 'AVD23'
[2010-12-16 10:23:33 - HelloAndroid] Launching a new emulator with Virtual Device 'AVD23'

在运行 Eclipse 3.5.2 和 Android 2.2(均为 32 位)的 Windows XP 上不会发生此问题。

我尝试了此线程中接受的答案所建议的解决方案,但没有帮助。任务管理器将 adb 的图像名称显示为 ' adb.exe *32 '。也许 Eclipse+JDK(64 位)和 Android 模拟器/SDK 的位数不匹配?

使用64 位 JDK进行 Android 开发是否可行(还)?

4

4 回答 4

5

好的,这是最终答案(截至今天):Android 开发,仅使用 64 位 JDK ,是不可能的(还)。

如果您安装 64 位 Eclipse 并且只安装 32 位 JDK,Eclipse 将拒绝启动。

因此,如果您决定安装 64 位 Eclipse,则需要同时安装 64 位 JDK32 位 JDK。

此后,即使是臭名昭著的 installer_r08-windows.exe 也会运行(甚至会自动为您调用“SDK Manager.exe”)。

但是 64 位 Eclipse 仍然不会在 Android 模拟器上安装 .apk。

结论:谷歌说 64 位 Windows 下(尚不)支持 Android 是绝对正确的。一些天才设法使他们的环境发挥作用,这一事实超出了我的理解。

于 2010-12-17T22:19:59.027 回答
1

我想 32 位 ADB 等待 32 位 JDK。只需安装 32 位 JDK - 之后一切正常。我在安装了 JDK 的 32 位和 64 位的 64 位机器上运行 Android SDK - 一切正常

于 2010-12-16T14:34:15.943 回答
1

我知道这可能会迟到,但我找到了解决办法。

我在跑:

-64 位 Windows 7

-64 位 Java 1.7 SDK

面向 Java 开发人员的 -64 位 Eclipse + ADT 插件

-64 位安卓 SDK

所以我要做的是保存我的 java 源文件,并通过 Eclipse 运行应用程序。我在模拟器完全加载到主屏幕后关闭它。接下来,我转到 Win7 中的命令提示符并键入emulator -verbose -avd youravdname。按下回车后,Eclipse 将决定将 .apk 文件上传并安装到模拟器上。现在你可以看到你的新活动了!

这非常麻烦,我想知道为什么这甚至有效。我认真地花了几个小时想知道我是否正确安装了所有东西。

于 2012-05-06T15:49:14.883 回答
0

我遇到了与原始海报相同的问题,并且我还在 Windows 7 Professional 64 位上使用 Android SDK 2.3、Eclipse Helios、JDK 1.6.0_23 64 位。

但是,一旦我杀死了 adb.exe *32 进程,然后重新启动 eclipse,然后再次尝试运行 HelloAndroid 应用程序,模拟器成功启动,应用程序 *.apk 已加载并完美运行。

我没有做任何其他事情,也没有在我的机器上安装 JDK 32 位。

于 2011-01-11T09:43:11.650 回答