android - 如何检查android上是否启用了USB连接模式?

标签 android usb connect

我在 android 市场上有一个应用程序,用户经常将他们的设备连接到他们的计算机以将音乐添加到应用程序文件夹中。我在说明中特别指出,启用usb连接模式后,android应用程序无法与sd卡通信。显然,这还不够愚蠢。有没有办法在 java 中检测 USB 是否已连接?我已经看到它是用广播接收器完成的,但这是一种非常愚蠢的方法。如果用户在连接到 USB 后启动应用程序,这将不起作用。一定有更好的方法。

最佳答案

这类似于:Check USB Connection Status on Android

尽管他们确实使用广播接收器。你说这是一种愚蠢的做事方式,但你能更具体一点吗?

不是说应用启动后检测不到。你需要做的是把

<intent-filter>
<action android:name="android.intent.action.ACTION_UMS_CONNECTED"/>
<action android:name="android.intent.action.ACTION_UMS_DISCONNECTED"/>

<Receiver> 下的AndroidManifest.xml 中以下类(class)的条目:

public class IntentReceiver extends BroadcastReceiver {

        @Override

        public void onReceive(Context context, Intent intent) {

                // TODO Auto-generated method stub

                if(intent.getAction().equals(Intent.ACTION_UMS_CONNECTED)){

                        Toast.makeText(context, "mounted", Toast.LENGTH_LONG).show();

                        Intent myStarterIntent = new Intent(context, tst.class);

                         myStarterIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

                        context.startActivity(myStarterIntent);

                }

        }

}

`

引用来源:http://www.anddev.org/start_activity_on_usb_connect-t8814.html

关于android - 如何检查android上是否启用了USB连接模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8797792/

相关文章:

android - Android 2.3.3 中的 HTML 标签解析错误

Android 谷歌地图当前位置。添加新的锁定标记并在谷歌地图上画一条线

usb - Arm7 USB编程

android - 三星 Galaxy S2 Android 上的 USB 附件 API

node.js - 空输入验证不起作用

node.js - 带有 Express.js 虚拟主机的子域上的 Socket.IO

Android 如何获取联系人照片的图像路径?

javascript - 如何在 Android 中编写 JavaScript 应用程序

usb - 如果我使用类驱动程序,为什么需要 USB VID/PID?

json - 如何强制将请求正文解析为纯文本而不是 Express 中的 json?