Android 安卓-如何阅读没有图库意图的截图
我对编写一个截图应用程序感兴趣,并想从中学习技术 用户使用电源和音量按钮拍摄屏幕截图后,应用程序将打开屏幕截图,而无需用户从图库中选择图像。我想做一些类似的事情(保存用户浏览图库以获取屏幕截图的步骤) 有人知道一个应用程序怎么能像这个应用程序那样读取屏幕截图吗?(在应用程序的演示视频中,此步骤显示在时间0:30) 编辑 我试着在我的Nexus5上测试它。我可以看到屏幕截图在文件夹Android 安卓-如何阅读没有图库意图的截图,android,screenshot,Android,Screenshot,我对编写一个截图应用程序感兴趣,并想从中学习技术 用户使用电源和音量按钮拍摄屏幕截图后,应用程序将打开屏幕截图,而无需用户从图库中选择图像。我想做一些类似的事情(保存用户浏览图库以获取屏幕截图的步骤) 有人知道一个应用程序怎么能像这个应用程序那样读取屏幕截图吗?(在应用程序的演示视频中,此步骤显示在时间0:30) 编辑 我试着在我的Nexus5上测试它。我可以看到屏幕截图在文件夹/sdcard/Pictures/Screenshots中。目录权限为: drwxrwx--x root sd
/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实例的引用。
这意味着局部变量肯定不起作用,将其放入一个字段,并确保您的类不会被垃圾收集,例如,即使活动也可能被终止,然后收集垃圾。是否有保存屏幕截图的标准目录路径?它似乎位于主存储器中的
图片/屏幕截图
下,但似乎没有文档,因此没有保证。我认为这可能是特定于制造商的,但同时检查主和辅助(SD卡)带有图片/屏幕截图(不区分大小写)的存储应找到文件夹。请检查编辑。我尝试使用FileObserver进行测试,但没有成功。更新后,FileObserver很难使用,请检查我的编辑。您可能需要一个服务,即使有一个服务,您也必须确保它不会轻易被杀死