Android USB设备连接在6.0之后不工作(棉花糖)
在我的Android项目中,我试图通过USB端口将平板电脑与Arduino设备进行通信,它适用于5.1版API 22:Lollipop,但不适用于6.0版API 23:Marshmallow,因为在这个Android版本中实现的权限更改 我已经将我的目标SDK版本设置为API22,但仍然不起作用 在我的活动中Android USB设备连接在6.0之后不工作(棉花糖),android,android-6.0-marshmallow,connectivity,usbserial,Android,Android 6.0 Marshmallow,Connectivity,Usbserial,在我的Android项目中,我试图通过USB端口将平板电脑与Arduino设备进行通信,它适用于5.1版API 22:Lollipop,但不适用于6.0版API 23:Marshmallow,因为在这个Android版本中实现的权限更改 我已经将我的目标SDK版本设置为API22,但仍然不起作用 在我的活动中 怎么了?我缺少什么?尝试授予权限 String permission = android.Manifest.permission.YOUR_PERMISSION; private sta
怎么了?我缺少什么?尝试授予权限
String permission = android.Manifest.permission.YOUR_PERMISSION;
private static void requestPermission(Activity activity) {
if (hasPermission(permission)) return;
ActivityCompat.requestPermissions(activity, new String[]{permission}, REQUEST_CODE);
}
public static boolean hasPermission() {
return ContextCompat.checkSelfPermission(SupAndroid.appContext, permission) == PERMISSION_GRANTED;
}
等待您的活动的onActivityResult中的回调最后,无论我请求了多少权限,Arduino ADK last update 2012对于包含6.0以上的Android API版本都不起作用。 我不得不改变策略,让我的Android设备成为主机,Arduino成为配件
问题解决了,但Arduino没有按预期为平板电脑充电。我正在尝试这样做,但我不知道哪些权限允许我通过USB端口传输和接收数据。最后不是这样,因为我使用Arduino作为主机,因此权限请求应该包含在ADK模块中。不过还是要谢谢你,在Android中请求权限激发了最终的解决方案。
String permission = android.Manifest.permission.YOUR_PERMISSION;
private static void requestPermission(Activity activity) {
if (hasPermission(permission)) return;
ActivityCompat.requestPermissions(activity, new String[]{permission}, REQUEST_CODE);
}
public static boolean hasPermission() {
return ContextCompat.checkSelfPermission(SupAndroid.appContext, permission) == PERMISSION_GRANTED;
}