Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用android 2.3.4中的ADK在(非活动)类中获取UsbManger实例_Android_Usb_Android Context_Adk_Accessory - Fatal编程技术网

使用android 2.3.4中的ADK在(非活动)类中获取UsbManger实例

使用android 2.3.4中的ADK在(非活动)类中获取UsbManger实例,android,usb,android-context,adk,accessory,Android,Usb,Android Context,Adk,Accessory,我正试图让android ADK在我活动的另一个包中的库中工作,我需要各种权限/各种事物的实例。 我已尝试将活动上下文传递给函数,然后运行: public void setup(Context context) { mManager = UsbManager.getInstance(context); UsbAccessory[] accessoryList = mManager.getAccessoryList(); PendingIntent mPermissionI

我正试图让android ADK在我活动的另一个包中的库中工作,我需要各种权限/各种事物的实例。 我已尝试将活动上下文传递给函数,然后运行:

public void setup(Context context)
{
    mManager = UsbManager.getInstance(context);
    UsbAccessory[] accessoryList = mManager.getAccessoryList();
    PendingIntent mPermissionIntent = PendingIntent.getBroadcast(context, 0,
            new Intent(ACTION_USB_PERMISSION), 0);
    IntentFilter filter = new IntentFilter(ACTION_USB_PERMISSION);
    context.registerReceiver(mUsbReceiver, filter);
    mManager.requestPermission(accessoryList[0], mPermissionIntent);
    if (accessoryList[0] != null) {

        mAccessory = accessoryList[0];
        openAccessory(mAccessory);
    }
}

但这会使应用程序崩溃,即使第一行之外的所有内容都被注释掉了。我不完全确定我做错了什么,希望能得到任何帮助。。。(调用并传递函数“this”)

对我有效的方法是在将元素[0]分配给MacAccessory之前检查accessoryList是否为null

    UsbAccessory mAccessory = (accessoryList == null ? null : accessoryList[0]);

希望您能同时解决一些问题。

对我有效的方法是在将元素[0]分配给MacAccessory之前检查accessoryList是否为null

    UsbAccessory mAccessory = (accessoryList == null ? null : accessoryList[0]);
希望你能在这期间解决一些问题