所以,我真正在寻找的是这个解决方案:以编程方式从 Android 的内置图库应用程序中获取/选择图像,但在偏好中而不是在活动中工作。
我创建了一个放在我的设置中的类,我想使用该类来找到用户在其手机上选择的图像的 URI。由于“startActivityForResult”,我无法使用该链接中的代码。这在首选项中不可用。
知道如何绕过这个吗?
进度报告:
所以,我在此期间尝试了一些东西。相反,在我的设置中,我添加了以下内容:
<Preference
android:key="test"
android:title="open image"
android:persistent="true">
<intent android:action="android.intent.action.GET_CONTENT"
android:value="image/*"/>
</Preference>
首先,不是“GET_CONTENT”,而是“PICK”,但有了它,我只能用Google Docs和Sim Card Tool Kit去,它远离画廊或任何东西来浏览文件系统。
使用“GET_CONTENT”,它会崩溃。
我还添加了“android.permission.WRITE_EXTERNAL_STORAGE”前提,即使我只是想阅读。但我没有找到任何(让我们把它作为一个子问题,如果有办法只要求阅读而不是写作)。
进度报告 #2
我将 android:value 替换为 android:mimeType 并直接进入画廊。现在,只需要知道我是否真的得到了 URI 并且它已经解决了。
进度报告 #3
在这一点上,这是真正的问题。当我浏览我的 SharedPreferences 时,该值保持为空,即使在选择图像之后也是如此。所以,我想有一些小技巧要做。所以现在,这就是问题所在。基于上面我的首选项屏幕的示例,我如何检索“test”的值,假设当调用意图时,它把它放在某个地方?