我如何使用Android的ADB工具发送一个意图?
当前回答
试试这个,打开一个Android照片应用程序,并以特定的图像文件作为参数打开。
adb shell am start -n com.google.android.apps.photos/.home.HomeActivity -d file:///mnt/user/0/primary/Pictures/Screenshots/Screenshot.png
它将在最新版本的Android上运行。没有弹出窗口来选择一个应用程序打开,因为你正在给特定的应用程序,你想打开你的图像。
其他回答
Use:
adb shell am start -n '< appppackagename >/<appActitivityName>'
获取<appPackageName>
Adb shell PM列表包
获取<appActitivityName>午餐应用程序并运行
adb shell dump窗口| grep -E 'mCurrentFocus'
当您尝试打开Flutter应用程序时,您可以使用以下命令:
adb shell am start -n com.package.name/io.flutter.embedding.android.FlutterActivity
用包名替换com.package.name。你可以在app/build中找到你的包。gradle at applicationId。
或者,你可以用这个:
adb shell am start -n com.package.name/.ActivityName
Linux和Mac用户也可以创建一个脚本来运行APK文件,如下所示:
用这三行代码创建一个名为"adb-run.sh"的文件:
pkg=$(aapt dump badging $1|awk -F" " '/package/ {print $2}'|awk -F"'" '/name=/ {print $2}')
act=$(aapt dump badging $1|awk -F" " '/launchable-activity/ {print $2}'|awk -F"'" '/name=/ {print $2}')
adb shell am start -n $pkg/$act
然后“chmod +x adb-run.sh”使其可执行。
现在你可以简单地:
adb-run.sh myapp.apk
这样做的好处是您不需要知道包名或可启动活动名。类似地,你可以创建"adb-uninstall.sh myapp.apk"
注意:这需要你有Android资产打包工具(aapt)在你的路径。你可以在SDK的新构建工具文件夹中找到它。
我们也可以通过知道应用程序类型并为其提供数据来启动应用程序:
adb shell am start -d "file:///sdcard/sample.3gp" -t "video/3gp" -a android.intent.action.VIEW
此命令显示可用的*视频播放器来播放示例。3 gp文件。
推荐文章
- 如何分配文本大小在sp值使用java代码
- Manifest合并失败:uses-sdk:minSdkVersion 14
- 为什么Android工作室说“等待调试器”如果我不调试?
- 如何检查我的EditText字段是否为空?
- Android从图库中选择图像
- 后台任务,进度对话框,方向改变-有任何100%工作的解决方案吗?
- Android:垂直对齐多行EditText(文本区域)
- Android无尽列表
- Android room persistent: AppDatabase_Impl不存在
- 错误:执行失败的任务':app:compileDebugKotlin'。>编译错误。详细信息请参见日志
- 在Android中使用URI生成器或使用变量创建URL
- 缩放图像以填充ImageView宽度并保持纵横比
- 列表视图的自定义适配器
- 在Android中设置TextView span的颜色
- 如何以编程方式在RelativeLayout中布局视图?