Auto.js Pro使用Intent跳转详细介绍

说明:此方法需要手机root。如果没有root也想使用需要用adb,给手机app一些权限才可以(此方法没测试,我直接root了。权限看我另外一篇文章)

autojs无root自动无障碍启动------华为_shuishen49的博客-CSDN博客

所需工具

  • ROOT过的手机/模拟器
  • XP框架
  • Intent记录下载
  • Auto.js Pro
  • Visual Studio Code

 以下是我抓的包


time: 2022-06-16 12:16:56 上午

from: com.jifen.qkbase.main.MainActivity

to: com.jifen.qkbase.web.WebActivity

action: null

clipData: null

flags: 0x00000000
dataString: null

type: null

componentName: ComponentInfo{com.jifen.qukan/com.jifen.qkbase.web.WebActivity}

scheme: null

package: null

requestCode: -1

categories: null

intentExtras: [
  {
    key: key_router_time
    value: 182704
    class: java.lang.Long
  },
  {
    key: raw_uri
    value: qkan://app/web
    class: java.lang.String
  },
  {
    key: field_url
    value: https://h5ssl.1sapp.com/qukanweb/inapp/activity/index.html
    class: java.lang.String
  },
]

bundle: null

代码需要这么写

app.startActivity({

    packageName: "com.jifen.qukan", //app的名字
    className: "com.jifen.qkbase.web.WebActivity", //上面的to
    extras:
    {
        key_router_time: 182704,
        raw_uri: "qkan://app/web",
        field_url: "https://h5ssl.1sapp.com/qukanweb/inapp/activity/index.html",
    },
root:true
    
});

 其实最主要的是这个表要传数据给app,必须先清楚。我也研究了好一会。

其实都怪autojs 官方介绍不全

    extras:
    {

//前面是key,后面是值,class是数据类型不管他。js自己能识别。
        key_router_time: 182704,
        raw_uri: "qkan://app/web",
        field_url: "https://h5ssl.1sapp.com/qukanweb/inapp/activity/index.html",
    },

注意如果没有root会报错。说你没有权限执行这个动作。那么你就需要利用app自带的跳转来跳转。因为上面这些功能是不对外开放的接口,是不允许被调用的。所以必须root。

非常感谢

​​​​​​Auto.js Pro使用Intent跳转,传入某音uid快速进入用户资料页和搜索页-飞云脚本

我是在这篇文章学习的。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Android Intent是一种用于在应用程序之间传递消息的机制。它允许您启动新的Activity、Service或BroadcastReceiver等组件,或者在当前Activity中启动其他应用程序组件。Intent可以携带数据,并且可以在不同的应用程序之间共享。 在Android中,常见的Intent用法包括: 1.启动Activity Intent可以用来启动另一个Activity。例如,您可以使用以下代码启动一个名为"SecondActivity"的Activity: ``` Intent intent = new Intent(this, SecondActivity.class); startActivity(intent); ``` 这将在当前Activity中启动一个新的Activity。 2.传递数据 Intent还可以用来在不同的Activity之间传递数据。例如,您可以使用以下代码将一个字符串数据传递到另一个Activity: ``` Intent intent = new Intent(this, SecondActivity.class); intent.putExtra("message", "Hello from MainActivity"); startActivity(intent); ``` 在接收Activity中,可以使用以下代码获取传递的数据: ``` String message = getIntent().getStringExtra("message"); ``` 3.启动Service Intent可以用来启动另一个Service。例如,您可以使用以下代码启动一个名为"MyService"的Service: ``` Intent intent = new Intent(this, MyService.class); startService(intent); ``` 4.发送Broadcast Intent还可以用来发送Broadcast。例如,您可以使用以下代码发送一个名为"com.example.MY_BROADCAST"的Broadcast: ``` Intent intent = new Intent("com.example.MY_BROADCAST"); sendBroadcast(intent); ``` 这将发送一个Broadcast给所有注册了该Broadcast的应用程序。 5.指定Action Intent可以指定一个Action,以便接收方可以识别它并执行相应的操作。例如,以下代码指定了一个名为"com.example.ACTION_DO_SOMETHING"的Action: ``` Intent intent = new Intent(); intent.setAction("com.example.ACTION_DO_SOMETHING"); startActivity(intent); ``` 在接收方中,可以使用以下代码获取Action: ``` String action = getIntent().getAction(); ``` 6.设置类型 Intent可以设置一个数据类型,以便接收方可以根据该类型来处理数据。例如,以下代码指定了一个MIME类型为"image/jpeg"的数据类型: ``` Intent intent = new Intent(); intent.setType("image/jpeg"); startActivity(intent); ``` 在接收方中,可以使用以下代码获取数据类型: ``` String type = getIntent().getType(); ``` 以上是Android Intent的几种常见用法。使用Intent可以方便地在不同的组件之间传递数据和消息,并且可以执行各种操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值