package com.android.gallery3d.app;
+import android.annotation.TargetApi;
import android.app.ActionBar.OnMenuVisibilityListener;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.graphics.Rect;
import android.net.Uri;
import android.nfc.NfcAdapter;
+import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.Toast;
import com.android.gallery3d.R;
+import com.android.gallery3d.common.ApiHelper;
import com.android.gallery3d.common.Utils;
import com.android.gallery3d.data.DataManager;
import com.android.gallery3d.data.FilterDeleteSet;
}
}
+ @TargetApi(Build.VERSION_CODES.JELLY_BEAN)
+ private void setNfcBeamPushUris(Uri[] uris) {
+ if (mNfcAdapter != null &&
+ Build.VERSION.SDK_INT >= ApiHelper.VERSION_CODES.JELLY_BEAN) {
+ mNfcAdapter.setBeamPushUris(uris, (Activity)mActivity);
+ }
+ }
+
private void updateShareURI(Path path) {
if (mShareActionProvider != null) {
DataManager manager = mActivity.getDataManager();
int type = manager.getMediaType(path);
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType(MenuExecutor.getMimeType(type));
- intent.putExtra(Intent.EXTRA_STREAM, manager.getContentUri(path));
+ Uri uri = manager.getContentUri(path);
+ intent.putExtra(Intent.EXTRA_STREAM, uri);
mShareActionProvider.setShareIntent(intent);
- if (mNfcAdapter != null) {
- mNfcAdapter.setBeamPushUris(new Uri[]{manager.getContentUri(path)},
- (Activity)mActivity);
- }
+ setNfcBeamPushUris(new Uri[]{uri});
mPendingSharePath = null;
} else {
// This happens when ActionBar is not created yet.
package com.android.gallery3d.ui;
+import android.annotation.TargetApi;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.nfc.NfcAdapter;
+import android.os.Build;
import android.os.Handler;
import android.view.ActionMode;
import android.view.LayoutInflater;
import com.android.gallery3d.R;
import com.android.gallery3d.app.GalleryActionBar;
import com.android.gallery3d.app.GalleryActivity;
+import com.android.gallery3d.common.ApiHelper;
import com.android.gallery3d.common.Utils;
import com.android.gallery3d.data.DataManager;
import com.android.gallery3d.data.MediaObject;
return operation;
}
+ @TargetApi(Build.VERSION_CODES.JELLY_BEAN)
+ private void setNfcBeamPushUris(Uri[] uris) {
+ if (mNfcAdapter != null &&
+ Build.VERSION.SDK_INT >= ApiHelper.VERSION_CODES.JELLY_BEAN) {
+ mNfcAdapter.setBeamPushUris(uris, (Activity)mActivity);
+ }
+ }
+
// Share intent needs to expand the selection set so we can get URI of
// each media item
private Intent computeSharingIntent(JobContext jc) {
ArrayList<Path> expandedPaths = mSelectionManager.getSelected(true);
if (expandedPaths.size() == 0) {
- if (mNfcAdapter != null) {
- mNfcAdapter.setBeamPushUris(null, (Activity)mActivity);
- }
+ setNfcBeamPushUris(null);
return null;
}
final ArrayList<Uri> uris = new ArrayList<Uri>();
intent.putExtra(Intent.EXTRA_STREAM, uris.get(0));
}
intent.setType(mimeType);
- if (mNfcAdapter != null) {
- mNfcAdapter.setBeamPushUris(uris.toArray(new Uri[uris.size()]),
- (Activity)mActivity);
- }
+ setNfcBeamPushUris(uris.toArray(new Uri[uris.size()]));
} else {
- if (mNfcAdapter != null) {
- mNfcAdapter.setBeamPushUris(null, (Activity)mActivity);
- }
+ setNfcBeamPushUris(null);
}
return intent;