按照国际惯例,先介绍下什么是Scheme协议,他是一种页面内跳转协议。通过定义自己的scheme协议,可以非常方便跳转app中的各个页面;通过scheme协议,服务器可以定制化告诉App跳转到APP内部页面。
其中有一种方法,也是最常用很简单的方法,参见:
正如郭老师所言,此方法有其
局限性,局限性表现为:
该应用有分享按钮且支持用web打开,此时我们只能用其他的方法去实现抓取,例如安装框架搭配
intent拦截者进行拦截、反编译apk阅读源代码等方式,但是这些方法都太繁琐门槛也很高。
下面,我将介绍另外一种获取的方式:
打开电脑端按键精灵手机助手的安装目录,找到
android文件夹,在此处按下
shift+鼠标右键,选择"在此处打开Powershell窗口"
进入shell,键入命令
logcat | grep act=android.intent.action.VIEW |
就可以看到咯:
其中 dat 就是Scheme的url, cmp 是要跳转到的包名,from的uid是发起跳转应用的uid
完整动图如下:
这种方法不仅可以看到历史的跳转记录(有时间记录),还能看到在应用之间的互相跳转