我正在编写一个文件夹观察程序,我已经在某些设备上工作,但并非所有设备似乎都保存到同一位置。我要做的是允许用户使用Chrome从网络应用程序保存图像,然后新文件的存在应该启动另一个进程。
在三星Galaxy平板电脑上,图像保存到/ mnt / sdcard / Download /,我可以监控此文件夹。
但是在三星Galaxy III手机上,他们会去/storage/sdcard0/android/data/com.android.chrome/files/download 我正在监控此文件夹的权限问题。
所以我想我的问题是双重的。有没有更简单的方法来检测这些图像保存到哪里?我正在使用INTERNAL_CONTENT_URI和EXTERNAL_CONTENT_URI,但这并没有让我接到电话。
如果在手机上访问该文件夹时出现问题,我该怎么办才能解决此问题?
答案 0 :(得分:0)
我最终硬编码了External_Content_URI之后的路径。
final String protectedpathToWatch = android.os.Environment.getExternalStorageDirectory().toString() + "/Android/data/com.android.chrome/files/Download/";
然后要阅读该路径,我必须添加特殊权限。
<uses-permission android:name="android.permission.DEVELOPMENT_TOOLS"/>
这显然是由于影响Chrome的安全漏洞。保存从画布生成的图像存储在其系统目录中,与cookie相同。在他们更改此行为之前,需要使用特殊权限来获取对这些下载的访问权限。