如何在不停止应用程序的情况下停止由应用程序自行启动的内容?
How would I stop something that was started by an app for itself without stopping the app?
注意:在使用 shell 和 commands/scripting 时,我对 linux/android 还很陌生,所以如果我提供了一些不相关的信息,或者我正在尝试做一些不可能的事情,请告诉我什么是不相关的,为什么有些事情是不可能的,并解释其他任何事情以帮助我在这方面做得更好。
我正在尝试制作一个脚本,在我退出 Orfox 应用程序时自动停止 Orbot 的 Tor 网络。到目前为止,除了 Tor 的停止部分外,我已经完成了大部分编码。我相信我可以在 shell 脚本中使用某些东西来停止 Tor 网络,对吗?
目前,我的脚本使用命令
# am force-stop org.torproject.android
停止应用程序(停止 Tor 网络),但我知道这不是唯一的方法...
我知道当我按下“开始”按钮(在 Orbot 应用程序中)或打开 Orfox 时,它会启动 Tor 网络...使用时
# ps | grep torproject
2次(启动Tor前后),我发现
u0_a291 11209 1 23092 15712 sys_epoll_ b68ecf18 S /data/data/org.torproject.android/app_bin/tor
仅在 Tor 开启时显示。
使用后我也发现
# ps | grep u0_a291
(与上一条命令相同)启动了两个shell:
u0_a291 11150 8783 3780 1336 pipe_wait b6d9d0ac S sh
u0_a291 11212 8783 3780 1340 pipe_wait b6dec0ac S sh
仅当 tor 开启时。
我假设一些命令 运行 通过一个或两个 shell 会给我一个提示,告诉我我可能需要什么命令来停止 tor 网络在我的脚本中,但我不知道如何查看它们或是否可以查看它们。有没有办法查看它们,或者我可能会尝试找出如何以错误的方式阻止 Tor?所以请大家帮帮我。
我终于弄明白了,我不需要我提供的任何信息... facepalm
我通过查看 base.apk(在 /data/app/org.torproject.android 中)作为存档,找到了我需要的服务和意图操作。我像查看文本文件一样查看 AndroidManifest.xml,发现该服务及其意图操作是
- .service.TorService
- org.torproject.android.intent.action.Start
我通过使用它来停止 tor 服务来结束我的脚本...我打赌这可能会在将来帮助其他人。
# am stopservice -n org.torproject.android/.service.TorService -a org.torproject.android.intent.action.START
注意:在使用 shell 和 commands/scripting 时,我对 linux/android 还很陌生,所以如果我提供了一些不相关的信息,或者我正在尝试做一些不可能的事情,请告诉我什么是不相关的,为什么有些事情是不可能的,并解释其他任何事情以帮助我在这方面做得更好。
我正在尝试制作一个脚本,在我退出 Orfox 应用程序时自动停止 Orbot 的 Tor 网络。到目前为止,除了 Tor 的停止部分外,我已经完成了大部分编码。我相信我可以在 shell 脚本中使用某些东西来停止 Tor 网络,对吗?
目前,我的脚本使用命令
# am force-stop org.torproject.android
停止应用程序(停止 Tor 网络),但我知道这不是唯一的方法...
我知道当我按下“开始”按钮(在 Orbot 应用程序中)或打开 Orfox 时,它会启动 Tor 网络...使用时
# ps | grep torproject
2次(启动Tor前后),我发现
u0_a291 11209 1 23092 15712 sys_epoll_ b68ecf18 S /data/data/org.torproject.android/app_bin/tor
仅在 Tor 开启时显示。
使用后我也发现
# ps | grep u0_a291
(与上一条命令相同)启动了两个shell:
u0_a291 11150 8783 3780 1336 pipe_wait b6d9d0ac S sh
u0_a291 11212 8783 3780 1340 pipe_wait b6dec0ac S sh
仅当 tor 开启时。
我假设一些命令 运行 通过一个或两个 shell 会给我一个提示,告诉我我可能需要什么命令来停止 tor 网络在我的脚本中,但我不知道如何查看它们或是否可以查看它们。有没有办法查看它们,或者我可能会尝试找出如何以错误的方式阻止 Tor?所以请大家帮帮我。
我终于弄明白了,我不需要我提供的任何信息... facepalm
我通过查看 base.apk(在 /data/app/org.torproject.android 中)作为存档,找到了我需要的服务和意图操作。我像查看文本文件一样查看 AndroidManifest.xml,发现该服务及其意图操作是
- .service.TorService
- org.torproject.android.intent.action.Start
我通过使用它来停止 tor 服务来结束我的脚本...我打赌这可能会在将来帮助其他人。
# am stopservice -n org.torproject.android/.service.TorService -a org.torproject.android.intent.action.START