Flash Builder 4.7 在 Samsung Pro Tab 8.2 实际在线时显示为离线

Flash Builder 4.7 shows Samsung Pro Tab 8.2 as offline when it's actually online

这种事情之前已经被问过几次了,但是我看到的建议并没有解决我的问题。我开始在 Flash Builder 4.7(昨天是 4.6)中处理 AIR Mobile 项目,它不想直接在我老板递给我的 Samsung Galaxy Pro Tab 8.2 上进行调试。当我尝试 运行 用 AS3 编写的应用程序时,它一直显示设备处于离线状态。

已推荐给:

还有什么?

编辑

需要注意的是,设备上似乎没有 "charge-only" 模式;至少某些版本的 KitKat 删除了几个 USB 模式选项。

我之前也曾尝试从 Android 下载以下文件并用它们更新我的 Flex SDK:

不幸的是,我无法让它更早地工作。当我看到它之前发布时,有人说这些文件的 "right versions" 将全部位于 Android SDK 文件夹中的一个特定文件夹中 - <Android root>\android-sdk\platform-tools - 但我只有三个他们在那个文件夹中;所以在 Android 下载中,我不得不四处寻找并从不同的地方提取它们。

例如,我会从<Android root>\android-sdk\build-tools.1.2拉取aapt.exe,我会从<Android root>\android-sdk\build-tools.1.2\lib拉取dx.jar。

也许这意味着我复制过来的版本不正确?我试过使用 Android SDK 管理器来获取它们,但它似乎并不想获取它们并将它们放在同一个位置 and/or 首先获取所有正确的文件.如果有人可以向我展示正确版本的存储库,或者至少是一种确保我下载正确版本的方法,我可以再试一次,看看这是否可能最终成为答案。

此外,如果我以管理员身份进入命令提示符并导航到 Flash Builder 所在的文件夹 adb,如果我从那里 运行 adb,这就是我得到的:

>adb devices
adb server is out of date.  killing...
* daemon started successfully *
List of devices attached
0e5d4a10064eb62c        device

然而,这是一个广泛归因于 HTC 的问题,与我的电脑无关。

基本上您需要使用最新的 Android SDK 更新 AIR SDK 中的一些文件。

请参考本题答案: https://forums.adobe.com/message/6794404#6794404

Jan 让我更仔细地查看这些文件的情况,从而让我找到了问题所在。


TL;DR

如果您使用的是 Flash Builder 4.7,请将该列表中的文件粘贴到 <Flash Builder root>\eclipse\plugins\com.adobe.flash.compiler_4.7.0.349722\AIRSDK\lib\android\bin

如果您使用的是 Flash Builder 4.6,请将它们粘贴到 <Flash Builder root>\sdks.6.0\lib\android\bin


在 Internet 的其他地方,据说将这些文件粘贴到 <Flash Builder root>\sdks.6.0\lib\android\bin,但事实证明还有另一个 Flash Builder 文件夹adb.exe,<Flash Builder root>\eclipse\plugins\com.adobe.flash.compiler_4.7.0.349722\AIRSDK\lib\android\bin。此外,虽然我似乎记得第一个文件夹的原始内容包含部分不同的文件列表,但第二个文件夹的原始内容具有完全相同的文件列表 - 只是它们的旧版本。

也就是说,在我最初发布这个答案之后,当且仅当您使用的是 Flash Builder 4.6 时,我在 Internet 上找到的关于将它们放在第一个文件夹中的建议才被证明是正确的;我在尝试解决此问题的过程中升级到 Flash Builder 4.7,我的猜测是我在升级之前没有尝试过那个特定的建议。这会导致该建议失败,因为它至少在某种程度上特定于 4.6。

至于 4.7,当我尝试在命令行上 运行 adb 和通常的 ADB 修复程序下载 (adbfix.exe) 时,基本上我遇到了 "server out of date" 错误实际上并没有多大帮助,但互联网上的信息将 "server out of date" 问题描述为 HTC(无论是什么)在其自己的文件夹中附带自己的 adb 的问题,该问题实际上与任何 adb 不同步你真的在尝试使用。这会导致两者之间出现某种 运行 时间冲突。但是我没有 HTC 或那个名字的文件夹,所以在 Jan 把我推回正确的方向后,我终于 运行 在我的 Flash Builder 根目录中搜索 adb.exe,这就是当我找到第二个文件夹时。

所以基本上,已经将该列表中所有文件的更新版本复制并粘贴到第一个文件夹中(我仍然从 Android SDK Manager 目录中的三个不同文件夹中获取它们),我粘贴了它们再次进入第二个文件夹。这两个文件夹都包含相对最新的版本,并且还完成了其他步骤,例如允许在设备上进行 USB 调试,并允许从我的桌面或其他任何地方进行 RSA 签名,它终于能够工作了,我能够直接在设备。

我有点好奇这些文件的最新版本是否会破坏此功能,或者您是否可以使用针对至少 4.4.2 的目标制作的任何版本。最后,我的 adb 版本是 1.0.32,而不是 1.0.31,但我至少尝试接近为 Android 4.4.2 KitKat 量身定制的版本。

之前我也不确定是否必须将这些文件粘贴到两个文件夹中,但现在我知道它们不需要。 据我所知,在 FB 4.7 的情况下,将它们粘贴到两个文件夹中不会造成任何伤害,因为我能够在将它们粘贴到两个文件夹中的设备上进行调试.虽然最初发布了这个答案后,我重新安装了 4.7 并将这些文件粘贴到第二个文件夹中,但不是第一个文件夹,它仍然可以正常工作。最后我也重新安装了 4.6,但即使是第二个文件夹的等价物似乎也不在其安装文件夹中;只有第一个文件夹有,所以我只是将文件粘贴到那里,并且也成功了。

基本上,获取这些文件的更新版本:

  • aapt.exe
  • adb.exe
  • AdbWinApi.dll
  • AdbWinUsbApi.dll
  • dx.jar

来自 Android SDK Manager(即,确保它们与 Android 4.4.2 兼容),并将它们粘贴到正确的 SDK 文件夹中,这取决于 Flash Builder 的版本您正在使用:

4.7: <Flash Builder root>\eclipse\plugins\com.adobe.flash.compiler_4.7.0.349722\AIRSDK\
     lib\android\bin

4.6: <Flash Builder root>\sdks.6.0\lib\android\bin

当然,如果您在 FB 4.7 中使用略有不同的次要版本的 Eclipse 插件,您可能需要稍微更改路径以匹配版本号。