10碎鑽
我想寫一個 當APP開啟時
停用 Phone 與 PC 連結(無法存取)
但是研究半天 沒有甚麼突破點...
有人有好的建議嗎?
目前退而求其次..以停用MTP為出發點
想說 只限用PTP,那就還好了
目前遇到的情況為(以下為片段程式碼)
MainActivity.java:
UsbManager um = (UsbManager)getSystemService(Context.USB_SERVICE);
um.setCurrentFunction(UsbManager.USB_FUNCTION_PTP, true);
AndroidManifest.xml:
<uses-permission android:name="android.permission.MANAGE_USB"></uses-permission>
10-13 09:57:38.007: E/AndroidRuntime(3495): FATAL EXCEPTION: main
10-13 09:57:38.007: E/AndroidRuntime(3495): java.lang.SecurityException: Neither user 10070 nor current process has android.permission.MANAGE_USB.
10-13 09:57:38.007: E/AndroidRuntime(3495): at android.os.Parcel.readException(Parcel.java:1425)
10-13 09:57:38.007: E/AndroidRuntime(3495): at android.os.Parcel.readException(Parcel.java:1379)
10-13 09:57:38.007: E/AndroidRuntime(3495): at android.hardware.usb.IUsbManager$Stub$Proxy.setCurrentFunction(IUsbManager.java:666)
10-13 09:57:38.007: E/AndroidRuntime(3495): at android.hardware.usb.UsbManager.setCurrentFunction(UsbManager.java:453)
10-13 09:57:38.007: E/AndroidRuntime(3495): at com.example.usbtest.MainActivity.tt(MainActivity.java:43)
10-13 09:57:38.007: E/AndroidRuntime(3495): at com.example.usbtest.MainActivity.access$0(MainActivity.java:41)
10-13 09:57:38.007: E/AndroidRuntime(3495): at com.example.usbtest.MainActivity$1.onClick(MainActivity.java:32)
10-13 09:57:38.007: E/AndroidRuntime(3495): at android.view.View.performClick(View.java:4084)
10-13 09:57:38.007: E/AndroidRuntime(3495): at android.view.View$PerformClick.run(View.java:16966)
10-13 09:57:38.007: E/AndroidRuntime(3495): at android.os.Handler.handleCallback(Handler.java:615)
10-13 09:57:38.007: E/AndroidRuntime(3495): at android.os.Handler.dispatchMessage(Handler.java:92)
10-13 09:57:38.007: E/AndroidRuntime(3495): at android.os.Looper.loop(Looper.java:137)
10-13 09:57:38.007: E/AndroidRuntime(3495): at android.app.ActivityThread.main(ActivityThread.java:4745)
10-13 09:57:38.007: E/AndroidRuntime(3495): at java.lang.reflect.Method.invokeNative(Native Method)
10-13 09:57:38.007: E/AndroidRuntime(3495): at java.lang.reflect.Method.invoke(Method.java:511)
10-13 09:57:38.007: E/AndroidRuntime(3495): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
10-13 09:57:38.007: E/AndroidRuntime(3495): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
10-13 09:57:38.007: E/AndroidRuntime(3495): at dalvik.system.NativeStart.main(Native Method)
手機有Root,也將App丟進System/app 目錄下安裝
但似乎 還是無法獲取 MANAGE_USB 權限
請問有人知道原因嗎?還是我方法錯了呢?
麻煩了 |

|