Android Studio:客户端尚未就绪

Aas*_*shi 18 debugging client android javascript-debugger server

在启动应用程序时,我收到消息"客户端尚未准备好".此外,我的设备显示"等待调试程序附加",然后"不幸的是,Android应用程序已停止工作".我已经在论坛上尝试了所有可能的解决方案,但是没有解决方案在这里应用.我还尝试运行一个简单的HELLO WORLD应用程序来了解我的应用程序代码是否存在某些问题,但是显示了相同的消息.我尝试了以下事项:

  1. 重新安装deice驱动程序
  2. 重新安装android工作室
  3. 安装LLDB
  4. 使用不同的设备,不同的电缆和端口
  5. 添加android.os.Debug.waitForDebugger(); 到清单文件
  6. 仅将设置更改为MTP
  7. 删除所有断点

但没有任何效果.可能是这个问题的根本原因?

pas*_*ssy 17

必须导出活动才能从adb访问.如果活动有,intent-filter则默认导出.否则添加导出的标志:

<activity
    android:name=".my.MyActivity"
    android:exported="true"/>
Run Code Online (Sandbox Code Playgroud)

这是您未导出活动并运行时获得的错误

adb shell am start -n "com.example/com.example.my.MyActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER

错误:

Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.example/.my.MyActiviy } from null (pid=26721, uid=2000) not exported from uid 10304
    at android.os.Parcel.readException(Parcel.java:1620)
    at android.os.Parcel.readException(Parcel.java:1573)
    at android.app.ActivityManagerProxy.startActivityAsUser(ActivityManagerNative.java:2694)
    at com.android.commands.am.Am.runStart(Am.java:875)
    at com.android.commands.am.Am.onRun(Am.java:359)
    at com.android.internal.os.BaseCommand.run(BaseCommand.java:47)
    at com.android.commands.am.Am.main(Am.java:100)
    at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
    at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:251)
Run Code Online (Sandbox Code Playgroud)