gpt4 book ai didi

Android - 如何在没有画廊 Intent 的情况下阅读屏幕截图

转载 作者:行者123 更新时间:2023-11-29 01:29:09 24 4
gpt4 key购买 nike

我有兴趣编写一个屏幕截图应用程序并想从中学习技术 app .

用户使用电源和音量按钮截取屏幕截图后,应用程序会打开屏幕截图,而无需用户从图库中选择图像。我想做类似的事情(省去了用户浏览图库以获取屏幕截图的步骤)。

有没有人知道应用程序如何像这个应用程序那样读取屏幕截图? (在应用程序的演示视频中,此步骤显示在时间 0:30)

编辑

我已尝试在我的 nexus 5 上对其进行测试。我可以看到屏幕截图位于文件夹 /sdcard/Pictures/Screenshots 中。目录权限为:

drwxrwx--x   root   sdcard_rw   2015-08-30 01:42    Screenshots

我授予我的应用存储权限。我在一个服务中使用了下面的代码,但是没有用:

FileObserver fileObserver = new FileObserver("/sdcard/Pictures/Screenshots") {
@Override
public void onEvent(int event, String path) {

Log.d("Test", "FileObserver event");
}
};

fileObserver.startWatching();

最佳答案

它应该作为后台服务运行,它注册了一个FileObserver。 , 并根据添加的文件执行操作。

或者服务只是手动检查文件夹。

编辑:

警告:如果 FileObserver 被垃圾回收,它将停止发送事件。为确保您持续接收事件,您必须保持对来自其他 Activity 对象的 FileObserver 实例的引用。

这意味着局部变量肯定不起作用,把它放到一个字段中并确保你的类不会被垃圾收集,例如甚至 Activity 也可以被杀死,然后进行垃圾回收。

关于Android - 如何在没有画廊 Intent 的情况下阅读屏幕截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32282526/

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