我正在尝试从 bash 脚本调用公共 android 方法 getSSID()?我的目标是将 android 设备上当前连接的 SSID 返回到 bash 变量。
要求:
- 必须以非 root 用户身份运行
- 必须只使用 android 烘焙函数。
- AKA 不需要额外的应用安装
- 必须直接从简单的 bash 脚本运行。
以前:我一直在使用带有 grep 的 dumpsys 命令来检索我需要的内容,但现在看来我需要成为 root 才能工作,所以我正在寻找这个概念的替代品。
$ dumpsys wifi | grep -i $grepwifi
所以我找到了这个公共api......
https://developer.android.com/reference/android/net/wifi/WifiInfo.html
但我无法弄清楚如何让它工作。我已经尝试了几个选项,例如下面列出的,但没有任何运气。
$ am start -a android.intent.action.MAIN -n com.android.settings/.wifi.WifiInfo.getSSID()
/system/bin/sh: syntax error: '(' unexpected
或者
$ am start -a android.intent.action.MAIN -n com.android.settings/.wifi.WifiInfo.getSSID
Starting: Intent { act=android.intent.action.MAIN cmp=com.android.settings/.wifi.WifiInfo.getSSID }
Error type 3
Error: Activity class {com.android.settings/com.android.settings.wifi.WifiInfo.getSSID} does not exist.
我假设我只是没有正确地将网址放在一起。所以我希望有人能指出我如何构建这些命令的文档,这样一旦我通过 ssid chalange,我就可以继续探索其他公共 api,但如果有另一种简单的方法可以从设备中检索 wifi 信息,我会感谢任何可行的替代方案。