gpt4 book ai didi

android - 为什么 usbManager.getAccessoryList();总是返回空值?

转载 作者:行者123 更新时间:2023-11-29 22:13:43 26 4
gpt4 key购买 nike

我正在 Samsung Galaxy S2 和 Android 2.3.4 中测试我的应用

我在关注

http://developer.android.com/guide/topics/usb/accessory.html

说明。

每当我尝试运行它时,usbManager.getAccessoryList();给空。

我什至尝试将 OTG cabel 和 pendrive 连接到它。

我的 list 。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.test"
android:versionCode="1"
android:versionName="1.0" >

<uses-feature android:name="android.hardware.usb.accessory" />

<uses-sdk android:minSdkVersion="10" />

<application
android:icon="@drawable/icon"
android:label="@string/app_name" >
<uses-library android:name="com.android.future.usb.accessory" />

<activity
android:name=".SplashScreen"
android:clearTaskOnLaunch="true"
android:label="@string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Advanced"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".Edit"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".Add"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="Main"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

<meta-data
android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED"
android:resource="@xml/accessory_filter" />
</activity>
</application>

</manifest>

最佳答案

我遇到了同样的问题,但我的平板电脑有 ICS。如果尝试我所做的,可能会奏效。我为此搜索了很多,但找不到,但感谢所有花时间回答我们问题的人,以及网络上的 wiki 资源,我找到了。

某些 android 版本中缺少一些文件,例如 AINOL NOVO 7 PALADIN。我认为这适用于任何具有相同问题的 ICS 平板电脑。我知道 Galaxy Tab 也有同样的问题,但由于我没有,所以无法确认这一点。如果这样做,请告诉我它是否适合您。

所以让我们将文件推送进来,看看进展如何。

将一些丢失的文件复制到系统驱动器中:

$ adb remount

$ adb push AINOL_FIX/system/etc/permissions/android.hardware.usb.host.xml /system/etc/permissions

$ adb push AINOL_FIX/system/etc/permissions/android.hardware.usb.accessory.xml /system/etc/permissions

注意:如果出现错误显示Out of Memory,这是正确的,您必须从系统驱动器中删除一些文件。我推荐一些来自系统/应用程序的动态壁纸。

我知道要写入系统驱动器,您应该拥有 root 访问权限,我在执行此操作时已经拥有它,所以如果它不起作用,请对其进行 root。

您可以从 Android 源代码构建或 USB-HOST API 实际运行的平板电脑中获取文件。我从 linaro 的 pandaboard ICS 构建中获得了它们。

现在,您应该尝试查找这些文件,但对于 Gingerbread,您还需要推送future.usb.accesory.jarsystem/framework,如果它还没有的话。

$ adb push AINOL_FIX/system/framework/com.android.future.usb.accessory.jar /system/framework

关于android - 为什么 usbManager.getAccessoryList();总是返回空值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8977885/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com