我必须遵循问题。我想使用意图选择器将图像共享给尽可能多的应用程序。要实现这一点,我有两个选择:
将图像保存到MediaStore
。但这意味着图像将显示在图库中,而无需用户授予它。
或使用FileProvider
分享图片。但是,如果我使用FileProvider
某些应用程序无效,则抛出以下异常:
java.lang.IllegalStateException:无法读取第0行,第0列 CursorWindow。确保之前正确初始化了Cursor 从中访问数据。 在android.database.CursorWindow.nativeGetLong(本机方法) 在android.database.CursorWindow.getLong(CursorWindow.java:507) 在android.database.AbstractWindowedCursor.getLong(AbstractWindowedCursor.java:75) 在android.database.CursorWrapper.getLong(CursorWrapper.java:106) 在ehz.a(PG:175) 在duj.a(PG:540) 在com.google.android.apps.photos.phone.SendContentActivity.onClick(PG:177) 在com.android.internal.app.AlertController $ ButtonHandler.handleMessage(AlertController.java:166) 在android.os.Handler.dispatchMessage(Handler.java:102) 在android.os.Looper.loop(Looper.java:137) 在android.app.ActivityThread.main(ActivityThread.java:4998) at java.lang.reflect.Method.invokeNative(Native Method) 在java.lang.reflect.Method.invoke(Method.java:515) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:777) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:593) 在dalvik.system.NativeStart.main(本地方法)
工作FileProvider
对我来说非常合适,因为使用.nomedia
选项我可以隐藏图库中的图像,并仍然可以将图像共享给所有其他应用。
有没有人设法解决这个问题?是否有其他选项可以共享可以访问所有其他应用程序的图像?
由于
答案 0 :(得分:0)
保存了问题。而不是我使用Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)
的所有选项,并使用.nomedia
创建了子目录,并且它有效。