从Android应用程序运行adb命令

时间:2013-12-16 05:52:32

标签: java android adb

如何在Android应用程序中运行adb shell am命令。我试图运行dumpheap命令。 Process p = Runtime.getRuntime().exec("am dumpheap -n 3554 /sdcard/memory");。我收到以下错误。

java.lang.SecurityException: Requires permission android.permission.SET_ACTIVITY_WATCHER
    at android.os.Parcel.readException(Parcel.java:1425
    at android.os.Parcel.readException(Parcel.java:1379)
    at android.app.ActivityManagerProxy.dumpHeap(ActivityManagerNative.java:3548)
    at com.android.commands.am.Am.runDumpHeap(Am.java:721)
    at com.android.commands.am.Am.run(Am.java:124)
    at com.android.commands.am.Am.main(Am.java:81)
    at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
    at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:235)
    at dalvik.system.NativeStart.main(Native Method)

1 个答案:

答案 0 :(得分:0)

您可能必须在Manifest文件中提供所需的权限。虽然从文档中看起来它只是出于调试目的。

您可以查看详细信息here