立即注册

QQ登录

只需一步,快速开始

老冷编程学院

老冷培训班汇总介绍老冷付费工具汇总介绍老鬼UI编程学院EasyClick所有产品简介EasyClick官方交流群
IOS授权价格IOS/安卓 自助提卡链接安卓-中控群控-电脑授权-购买IOSusb版投屏群控教程IOS脱机版激活教程
IOS脱机版wifi局域网脚本中控教程IOS脱机版wifi局域网群控投屏教程远程调试frp,兼容安卓/IOS热更新工具,兼容安卓/IOS脱机版老冷网盘
查看: 660|回复: 0

[教程] 【安卓】shell intent参数详解am start activity

[复制链接] |主动推送

932

主题

101

回帖

3万

积分

管理员

【导师】

Rank: 9Rank: 9Rank: 9

积分
37229
最后登录
2024-4-30
在线时间
1244 小时

兔年勋章金牌银牌铜牌导师微信认证热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老QQ认证EC VIP学员

发表于 2023-12-16 15:38:11 | 显示全部楼层 |阅读模式

马上注册,解锁更多高级玩法

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1 Intent参数
Intent的参数和flags较多,本文为方便起见,分为3种类型参数,常用参数,Extra参数,Flags参数。
1.1 常用参数
  • -a <ACTION>: 指定Intent action, 实现原理Intent.setAction();
  • -n <COMPONENT>: 指定组件名,格式为{包名}/.{主Activity名},实现原理Intent.setComponent();
  • -d <DATA_URI>: 指定Intent data URI
  • -t <MIME_TYPE>: 指定Intent MIME Type
  • -c <CATEGORY> [-c <CATEGORY>] ...]:指定Intent category,实现原理Intent.addCategory()
  • -p <PACKAGE>: 指定包名,实现原理Intent.setPackage();
  • -f <FLAGS>: 添加flags,实现原理Intent.setFlags(int ),紧接着的参数必须是int型;
实例
[Shell] 纯文本查看 复制代码
am start -a android.intent.action.VIEWam start -n com.gityuan.app/.MainActivityam start -d content://contacts/people/1
am start -t image/pngam start -c android.intent.category.APP_CONTACTS


1.2 Extra参数
(1). 基本类型
参数
-e/-es
-esn
-ez
-ei
-el
-ef
-eu
-ecn
类型
String
(String)null
boolean
int
long
float
uri
component

比如参数es是Extra String首字母简称,实例:
[Shell] 纯文本查看 复制代码
am start -n com.gityuan.app/.MainActivity -es website gityuan.com


此处-es website gityuan.com,等价于Intent.putExtra(“website”, “gityuan.com”);
(2). 数组类型
参数
-esa
-eia
-ela
-efa
数组类型
String[]
int[]
long[]
float[]

比如参数eia,是Extra int array首字母简称,多个value值之间以逗号隔开,实例:
[Shell] 纯文本查看 复制代码
am start -n com.gityuan.app/.MainActivity -ela weekday 1,2,3,4,5


此处-ela weekday 1,2,3,4,5,等价于Intent.putExtra(“weekday”, new int[]{1,2,3,4,5});
(3). ArrayList类型
参数
-esal
-eial
-elal
-efal
List类型
String
int
long
float

比如参数efal,是Extra float Array List首字母简称,多个value值之间以逗号隔开,实例:
[Shell] 纯文本查看 复制代码
am start -n com.gityuan.app/.MainActivity -efal nums 1.2,2.2


此处-efal nums 1.2,2.2,等价于先构造ArrayList变量,再通过putExtra放入第二个参数。
1.3 Flags参数
在参数类型1中,提到有-f <FLAGS>,是通过Intent.setFlags(int )方法,来设置Intent的flags.本小节也是关于flags,是通过Intent.addFlags(int )方法。
如下所示,所有的flags参数。
[--grant-read-uri-permission]
[--grant-write-uri-permission]
[--grant-persistable-uri-permission]
[--grant-prefix-uri-permission]
[--debug-log-resolution]
[--exclude-stopped-packages]
[--include-stopped-packages]
[--activity-brought-to-front]
[--activity-clear-top]
[--activity-clear-when-task-reset]
[--activity-exclude-from-recents]
[--activity-launched-from-history]
[--activity-multiple-task]
[--activity-no-animation]
[--activity-no-history]
[--activity-no-user-action]
[--activity-previous-is-top]
[--activity-reorder-to-front]
[--activity-reset-task-if-needed]
[--activity-single-top]
[--activity-clear-task]
[--activity-task-on-home]
[--receiver-registered-only]
[--receiver-replace-pending]

例如,发送action=”broadcast.demo”的广播,并且对于forceStopPackage()的应用不允许接收该广播,命令如下:
[Shell] 纯文本查看 复制代码
am broadcast -a broadcast.demo --exclude-stopped-packages








VIP培训班介绍汇总[安卓/IOSusb版/IOS脱机版/PHP/nodejs等]
http://bbs.laoleng.vip/forum.php?mod=viewthread&tid=428

付费工具介绍汇总[热更/远程调试/IOS易语言UI/拓展插件等]
http://bbs.laoleng.vip/forum.php?mod=viewthread&tid=430
游客
回复
您需要登录后才可以回帖 登录 | 立即注册

关闭

想要力量吗骚年 上一条 /2 下一条

关闭

免责声明|Archiver|手机版|闽ICP备20013040号-2| 老冷编程学院 |网站地图

GMT+8, 2024-4-30 16:39

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表