<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="16" />
+ <permission android:name="com.android.gallery3d.permission.GALLERY_PROVIDER"
+ android:protectionLevel="signature" />
+
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
android:syncable="false"
android:grantUriPermissions="true"
android:exported="true"
+ android:permission="com.android.gallery3d.permission.GALLERY_PROVIDER"
android:authorities="com.android.gallery3d.provider" />
<activity android:name="com.android.gallery3d.gadget.WidgetClickHandler" />
<activity android:name="com.android.gallery3d.app.DialogPicker"
private Intent createShareIntent(Path path) {
DataManager manager = mActivity.getDataManager();
int type = manager.getMediaType(path);
- Intent intent = new Intent(Intent.ACTION_SEND);
- intent.setType(MenuExecutor.getMimeType(type));
- Uri uri = manager.getContentUri(path);
- intent.putExtra(Intent.EXTRA_STREAM, uri);
- return intent;
+ return new Intent(Intent.ACTION_SEND)
+ .setType(MenuExecutor.getMimeType(type))
+ .putExtra(Intent.EXTRA_STREAM, manager.getContentUri(path))
+ .addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
}
private Intent createSharePanoramaIntent(Path path) {
if ((supported & MediaObject.SUPPORT_PANORAMA360) == 0) {
return null;
}
- Intent intent = new Intent(Intent.ACTION_SEND);
- intent.setType(GalleryUtils.MIME_TYPE_PANORAMA360);
- Uri uri = manager.getContentUri(path);
- intent.putExtra(Intent.EXTRA_STREAM, uri);
- return intent;
+ return new Intent(Intent.ACTION_SEND)
+ .setType(GalleryUtils.MIME_TYPE_PANORAMA360)
+ .putExtra(Intent.EXTRA_STREAM, manager.getContentUri(path))
+ .addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
}
private void launchPhotoEditor() {
intent.setType(GalleryUtils.MIME_TYPE_PANORAMA360);
intent.putExtra(Intent.EXTRA_STREAM, uris.get(0));
}
+ intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
}
return intent;
intent.setAction(Intent.ACTION_SEND).setType(mimeType);
intent.putExtra(Intent.EXTRA_STREAM, uris.get(0));
}
+ intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
setNfcBeamPushUris(uris.toArray(new Uri[uris.size()]));
} else {
setNfcBeamPushUris(null);