gpt4 book ai didi

android - 以编程方式读取 Android logcat 时,并非显示所有数据

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:30:35 24 4
gpt4 key购买 nike

我有这样的问题,我尝试以编程方式从 logcat 获取数据。权限也已添加到 list 文件中:

<uses-permission android:name="android.permission.READ_LOGS"/>

代码:

    new Thread(new Runnable() {
@Override
public void run() {
try {
Process process = Runtime.getRuntime().exec("logcat ActivityManager:I *:S");
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));

String line;
while ((line = bufferedReader.readLine()) != null) {
reactOnString(line);
}
} catch (IOException e) {
}
}
}).start();

但是我看不到其他应用程序何时启动。我正在等待像下面这样的字符串,但它们没有出现。

2260-2566/system_process                 I/ActivityManager: Start proc com.android.email for activity com.android.email/.activity.MessageCompose: pid=6460 uid=10011 gids={50011, 3003, 1015, 1023, 1028}

附言此代码在服务中运行。

最佳答案

我有个坏消息要告诉你:从 JB 开始,READ_LOGS 不再像以前那样工作了:

https://groups.google.com/forum/?fromgroups#!topic/android-developers/6U4A5irWang

(滚动到 Android 开发者 Dianne Hackborn 的帖子)和这个视频:

Google I/O 2012 - Ten Things Game Developers Should Know

(22:47) 官方来源。

然而,他还没有被记录下来(READ_LOGS 权限没有报告这个)并且仍然是一个困惑的来源。您现在只能访问自己的日志,好消息是,您不再需要为它请求权限(如果您的目标是 Jelly Beans,就这样......)。

我想这是 Android 开发团队为防止恶意应用程序监视用户而采取的妥协,可能会获取敏感信息(我敢打赌,每个应用程序开发人员都不会在发布前清理自己的 Log.d 语句)。

希望对你有帮助

关于android - 以编程方式读取 Android logcat 时,并非显示所有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16795582/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com