无法通过 adb 检测到 android phone

Unable to detect android phone via adb

我正在使用 Adob​​e Flash CS5.5 在 Android 上开发 flash air 应用程序。但是,我似乎无法让我的 phone 对 Flash 可见。

我有三星 Galaxy GT-N7000 (Galaxy Note)。我已经用 cyanogenmod 10.1.3-n7000 植根 phone。我在 phone 设置中启用了 "usb debugging"。 我正在 运行 在 Windows 7 Professional 32 位上安装它。

当我将 phone 连接到 PC 时,我可以在设备管理器 -> 便携式设备标题下看到它是 GT-N7000。我也可以毫无问题地复制文件 to/from 这个设备。

我系统flash安装文件夹中安装的adb版本是1.0.26。当我尝试 运行 我的 phone 上的 flash 动画时,它似乎无法检测到它。我收到错误消息 "Could not find an android device to connect to. Please ensure that you have the phone connected, the correct drivers installed, and the phone has USB device debugging enabled"。

我不知道如何安装 USB driver,因为我的是 galaxy note,但正在使用 cyanogenmod。我在 flash 安装文件夹中找不到 SDK 管理器,但是 运行 来自 android-sdk 文件夹的 SDK 管理器,我为开发 android 使用 Android Studio 的应用程序。我从那个位置安装了 Google USB drivers。我不确定这是否有助于 Flash 检测 phone.

我也试过使用usb连接方式作为MTP、PTP,还有海量存储。不过没区别。

还有什么问题?任何指针?如果缺少任何细节,请原谅。我会按照指出的方式添加它们。

UPDATE:在 Android Device Connectivity in Adobe Flash Pro CS6 Win7 x64 找到了类似的查询。但是,对我不起作用! :(

解决方法(好吧,有点!):我可以将 .apk 文件复制到 phone 内存,然后安装它。我必须启用 "Unknown Sources- Allow installation of apps from unknown sources"。 但是,我仍然无法直接发布到 phone,也无法从 Flash 对其进行调试。

解决了!由于 Flash 连接似乎不起作用,我认为最好看看我是否至少可以让 Android Studio 与我的 phone 一起工作。尝试了所有可能的方法,包括使用 SDK 管理器安装 Google USB 驱动程序。没有任何效果。

由于我的 phone 是 GT-N7000,但使用 CyanogenMod,我认为三星 USB 驱动程序不适合它。

最后,在尝试了很多其他方法之后,我做了最简单的事情。找到Samsung GT-N7000 usb驱动(从本XDA论坛posthttp://forum.xda-developers.com/showthread.php?t=1755001镜像link下载),安装,一切开始在职的! Flash、Android Studio 等!

对于那些不想只下载驱动程序,或者对从未经验证的 link 下载犹豫不决的人,您可以下载并安装 Samsung Kies,它将安装所需的正确驱动程序!

呸!有时,最简单的事情是唯一需要的步骤!

注意:请参阅我的第一个答案,了解解决此问题的简单方法。如果这对您不起作用,您可以尝试此处记录的步骤。

我正在发布后续问题以及我是如何解决这些问题的。由于此 update 相当长并且可能不会发生在其他人身上,因此我将其作为单独的答案发布。它仍然与这个问题有关,因此我将其保留为替代答案。

**

版主:如果有更优雅的方法,请告诉我,我会做需要的。

**

更新: 由于某些原因我卸载了 Flash,大约两个月后又重新安装了它。但是,我发现在这之后我无法发布到phone。最终解决如下。

有时,即使安装了设备驱动程序并在设备管理器中显示为 adb 界面,您也可能无法发布到 phone。确保您已在 phone 中启用 "developer options",并且 "USB debugging" 选项已启用。这可能会解决您的问题。

但是,就我而言,这不起作用。 Flash 只是停留在 "Publishing" 阶段,并没有继续在 phone.

上启动我的项目

在这种情况下,打开命令提示符(在 windows 中)并使用命令 "adb devices" 查询设备。

如果设备显示为 "offline" 状态,请尝试将 phone 连接到另一个端口。同样,这对我来说也没有用。

最后,我使用 "SDK Manager" 在我的机器上更新了 Platform SDK。更新后,我在命令提示符下重新 运行 命令 "adb devices",瞧! phone 现在已正确列出,没有任何 "offline" 状态。

现在问题来了!问题是 Flash CS5.5 使用旧版本的 Air 运行时(它带有自己的 adb.exe 版本)。为了更新这个,我从http://www.adobe.com/devnet/air/air-sdk-download.html. However as Flash 5.5 doesn't have a straight-forward way to use the latest version of the SDKthere were some steps that I had to follow to do so. The original document is at http://code.tutsplus.com/tutorials/enable-the-latest-air-sdk-in-flash-professional-cs55--active-11488下载了最新版本的AIR SDK,但是我是根据我自己对网页中提到的步骤的更改在这里内联它,并确保这些步骤不会link 秒后死亡。

第 1 步:下载最新的 SDK

从以下link下载最新的AIR SDK:http://www.adobe.com/products/air/sdk/ 将下载的文件解压缩到桌面上的单独文件夹中

第 2 步:备份您当前的 SDK 文件夹

转到 Adob​​e Flash CS5.5 安装文件夹 ( 在 32 位 Windows 上应该是 "C:\Program Files\Adobe\Adobe Flash CS5.5", "C:\Program Files (x86)\Adobe\Adobe Flash CS5.5" 在 64 位上 Windows,以及 "Applications/Adobe Flash CS5.5" 在 OS X 上)。

将 AIR2.6 文件夹重命名为 AIR2。6_OLD。 新建一个文件夹,命名为AIR2.6.

第 3 步:创建新的 SDK 文件夹 将最新的 AIR SDK 文件夹(您在桌面上创建的)的内容复制到 AIR2.6 文件夹。 浏览到 Adob​​e Flash CS5.5 文件夹中的 AIR2.6/frameworks/libs/air/ 文件夹并复制 airglobal.swc 文件。 将 SWC 文件粘贴到 Adob​​e Flash CS5.5/Common/Configuration/ActionScript 3.0/AIR2.6/,覆盖现有的 airglobal.swc 文件。

第 4 步:最终配置设置

转到 Adob​​e Flash CS5.5/Common/Configuration/Players/ 并使用文本编辑器打开以下文件 (您可能需要管理权限才能在 Windows 中的应用程序文件夹中编辑这些文件):

AdobeAIR2_6.xml AiriPhone.xml Android.xml

注意:播放器元素以及如何将其指向正确的版本。转到 https://helpx.adobe.com/air/air-releasenotes.html 并从开始计数 2.6 版本为 11,到您更新的版本,每次看到每个版本的 "user release notes" 时递增。为了方便参考, 版本 19 应视为版本 30。

在每个文件中将播放器元素的版本属性从 11 更改为这个计算版本(在我的例子中是 30)。 完成编辑后不要忘记保存它们。

重新启动 Flash,并尝试发布到 phone。它对我有用! :)