Java Code Examples for android.content.Intent#getClipData()
The following examples show how to use
android.content.Intent#getClipData() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ImagePicker.java From androidnative.pri with Apache License 2.0 | 6 votes |
static private void importImage(Intent data) { Uri uri = data.getData(); Log.d(TAG,"importImage: uri:" + uri); Log.d(TAG,"importImage: type: " + data.getType()); if (data.getClipData() != null) { importImageFromClipData(data); } else if (uri != null ) { if (uri.getScheme().equals("file")) { importImageFromFileUri(uri); } else { importImageFromContentUri(uri); } } }
Example 2
Source File: MediaSource.java From belvedere with Apache License 2.0 | 6 votes |
/** * Extract {@link Uri} from an {@link Intent} that comes back from a gallery * or the android document picker. * * <p> * If the user selects multiple media files, it's necessary to check if * {@link Intent#getClipData()} contains data. Support for selecting multiple * files was introduced with Android Jelly Bean. * {@link android.os.Build.VERSION_CODES#JELLY_BEAN} * <br> * A single selected item is available by calling {@link Intent#getData()}. * <br> * Pretty messed up :/ * </p> * * @param intent The returned {@link Intent}, containing {@link Uri} to the selected * media * @return A list of {link Uri} */ @SuppressLint("NewApi") private List<Uri> extractUrisFromIntent(Intent intent){ final List<Uri> images = new ArrayList<>(); if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN && intent.getClipData() != null) { final ClipData clipData = intent.getClipData(); for (int i = 0, itemCount = clipData.getItemCount(); i < itemCount; i++) { final ClipData.Item itemAt = clipData.getItemAt(i); if (itemAt.getUri() != null) { images.add(itemAt.getUri()); } } } else if(intent.getData() != null){ images.add(intent.getData()); } return images; }
Example 3
Source File: FilePickHelper.java From ForPDA with GNU General Public License v3.0 | 6 votes |
public static List<RequestFile> onActivityResult(Context context, Intent data) { List<RequestFile> files = new ArrayList<>(); RequestFile tempFile; Log.d(LOG_TAG, "onActivityResult " + data); if (data.getData() == null) { if (data.getClipData() != null) { for (int i = 0; i < data.getClipData().getItemCount(); i++) { tempFile = createFile(context, data.getClipData().getItemAt(i).getUri()); if (tempFile != null) files.add(tempFile); } } } else { tempFile = createFile(context, data.getData()); if (tempFile != null) files.add(tempFile); } return files; }
Example 4
Source File: Main2Activity.java From styT with Apache License 2.0 | 6 votes |
@TargetApi(Build.VERSION_CODES.LOLLIPOP) private void onActivityResultAboveL(int requestCode, int resultCode, Intent intent) { if (requestCode != FILE_CHOOSER_RESULT_CODE || uploadMessageAboveL == null) return; Uri[] results = null; if (resultCode == AppCompatActivity.RESULT_OK) { if (intent != null) { String dataString = intent.getDataString(); ClipData clipData = intent.getClipData(); if (clipData != null) { results = new Uri[clipData.getItemCount()]; for (int i = 0; i < clipData.getItemCount(); i++) { ClipData.Item item = clipData.getItemAt(i); results[i] = item.getUri(); } } if (dataString != null) results = new Uri[]{Uri.parse(dataString)}; } } uploadMessageAboveL.onReceiveValue(results); uploadMessageAboveL = null; }
Example 5
Source File: SearchBookPresenterImpl.java From HaoReader with GNU General Public License v3.0 | 6 votes |
@Override public void fromIntentSearch(Intent intent) { String keyWord = null; if (intent != null) { keyWord = intent.getStringExtra("searchKey"); if (keyWord == null && intent.getClipData() != null && intent.getClipData().getItemCount() > 0) { ClipData.Item item = intent.getClipData().getItemAt(0); keyWord = StringUtils.valueOf(item.getText()).trim(); keyWord = TextProcessor.formatKeyword(keyWord); } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && keyWord == null && Intent.ACTION_PROCESS_TEXT.equals(intent.getAction())) { String type = intent.getType(); if ("text/plain".equals(type)) { keyWord = TextProcessor.formatKeyword(intent.getStringExtra(Intent.EXTRA_PROCESS_TEXT)); } } } mView.searchBook(keyWord); }
Example 6
Source File: RxGalleryActivity.java From RxGallery with MIT License | 6 votes |
private ArrayList<Uri> handleGallery(Intent data) { ArrayList<Uri> uris = new ArrayList<>(); if (data.getData() != null) { // Single select uris.add(data.getData()); } else { // Multi select if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) { ClipData clipData = data.getClipData(); if (clipData != null) { for (int i = 0; i < clipData.getItemCount(); i++) { uris.add(clipData.getItemAt(i).getUri()); } } } } return uris; }
Example 7
Source File: LegacyInstallerFragment.java From SAI with GNU General Public License v3.0 | 6 votes |
@Override public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == REQUEST_CODE_GET_FILES) { if (resultCode != Activity.RESULT_OK || data == null) return; if (data.getData() != null) { mViewModel.installPackagesFromContentProviderZip(data.getData()); return; } if (data.getClipData() != null) { ClipData clipData = data.getClipData(); List<Uri> apkUris = new ArrayList<>(clipData.getItemCount()); for (int i = 0; i < clipData.getItemCount(); i++) apkUris.add(clipData.getItemAt(i).getUri()); mViewModel.installPackagesFromContentProviderUris(apkUris); } } }
Example 8
Source File: GrantedUriPermissions.java From android_9.0.0_r45 with Apache License 2.0 | 6 votes |
public static GrantedUriPermissions createFromIntent(IActivityManager am, Intent intent, int sourceUid, String targetPackage, int targetUserId, String tag) { int grantFlags = intent.getFlags(); if (!checkGrantFlags(grantFlags)) { return null; } GrantedUriPermissions perms = null; Uri data = intent.getData(); if (data != null) { perms = grantUri(am, data, sourceUid, targetPackage, targetUserId, grantFlags, tag, perms); } ClipData clip = intent.getClipData(); if (clip != null) { perms = grantClip(am, clip, sourceUid, targetPackage, targetUserId, grantFlags, tag, perms); } return perms; }
Example 9
Source File: ZulipActivity.java From zulip-android with Apache License 2.0 | 5 votes |
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == REQUEST_TAKE_PHOTO && resultCode == RESULT_OK) { // send file path to PhotoSendActivity Intent photoSendIntent = new Intent(this, PhotoSendActivity.class); photoSendIntent.putExtra(Intent.EXTRA_TEXT, mCurrentPhotoPath); startActivity(photoSendIntent); // activity transition animation ActivityTransitionAnim.transition(ZulipActivity.this); } else if (requestCode == REQUEST_PICK_FILE && resultCode == RESULT_OK) { List<Uri> fileUris = new ArrayList<>(); if (data.getData() != null) { fileUris.add(data.getData()); } // intent.getClipData was added in api 16 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { ClipData clipData = data.getClipData(); if (clipData != null) { for (int i = 0; i < clipData.getItemCount(); i++) { fileUris.add(clipData.getItemAt(i).getUri()); } } } for (Uri file : fileUris) { handleSentFile(file); } } }
Example 10
Source File: RemoteInputCompatJellybean.java From adt-leanback-support with Apache License 2.0 | 5 votes |
static Bundle getResultsFromIntent(Intent intent) { ClipData clipData = intent.getClipData(); if (clipData == null) { return null; } ClipDescription clipDescription = clipData.getDescription(); if (!clipDescription.hasMimeType(ClipDescription.MIMETYPE_TEXT_INTENT)) { return null; } if (clipDescription.getLabel().equals(RESULTS_CLIP_LABEL)) { return clipData.getItemAt(0).getIntent().getExtras().getParcelable(EXTRA_RESULTS_DATA); } return null; }
Example 11
Source File: ProfileActivity.java From mage-android with Apache License 2.0 | 5 votes |
@TargetApi(16) private List<Uri> getClipDataUris(Intent intent) { List<Uri> uris = new ArrayList<>(); if (Build.VERSION.SDK_INT >= 16) { ClipData cd = intent.getClipData(); if (cd != null) { for (int i = 0; i < cd.getItemCount(); i++) { uris.add(cd.getItemAt(i).getUri()); } } } return uris; }
Example 12
Source File: MainActivity.java From hash-checker with Apache License 2.0 | 5 votes |
@Override public void create() { Intent intent = getIntent(); String scheme = null; ClipData clipData = null; if (intent != null) { scheme = intent.getScheme(); clipData = intent.getClipData(); } Uri externalFileUri = null; if (clipData != null) { externalFileUri = clipData.getItemAt(0).getUri(); } HashCalculatorFragment mainFragment = new HashCalculatorFragment(); if (scheme != null && scheme.compareTo(ContentResolver.SCHEME_CONTENT) == 0) { mainFragment.setArguments(getConfiguredBundleWithDataUri(intent.getData())); SettingsHelper.setGenerateFromShareIntentMode(this, true); } else if (externalFileUri != null) { mainFragment.setArguments(getConfiguredBundleWithDataUri(externalFileUri)); SettingsHelper.setGenerateFromShareIntentMode(this, true); } else { mainFragment.setArguments(getBundleForShortcutAction(intent.getAction())); SettingsHelper.setGenerateFromShareIntentMode(this, false); } showFragment(mainFragment); }
Example 13
Source File: MainActivity.java From cloudinary_android with MIT License | 5 votes |
private void uploadFromIntentUri(Intent data) { Uri uri = data.getData(); if (uri != null) { handleUri(uri, data.getFlags()); } else if (data.getClipData() != null) { ClipData clip = data.getClipData(); for (int i = 0; i < clip.getItemCount(); i++) { handleUri(clip.getItemAt(i).getUri(), data.getFlags()); } } }
Example 14
Source File: QiPick.java From quickimagepick with Apache License 2.0 | 5 votes |
@SuppressLint("NewApi") private static void handleResultFromDocuments(final int pRequestType, @NonNull final PickCallback pCallback, @Nullable final Intent pData) { final Uri pictureUri = pData == null ? null : pData.getData(); if (pictureUri == null) { final ClipData clipData = API_18 ? pData != null ? pData.getClipData() : null : null; if (clipData != null) { final ArrayList<Uri> uris = new ArrayList<>(); for (int i = 0; i < clipData.getItemCount(); i++) { final ClipData.Item item = clipData.getItemAt(i); final Uri uri = item.getUri(); if (uri != null) { uris.add(uri); } } if (uris.isEmpty()) { pCallback.onError(PickSource.DOCUMENTS, pRequestType, ERR_DOCS_NULL_RESULT); } else { pCallback.onMultipleImagesPicked(pRequestType, uris); } } else { pCallback.onError(PickSource.DOCUMENTS, pRequestType, ERR_DOCS_NULL_RESULT); } } else { pCallback.onImagePicked(PickSource.DOCUMENTS, pRequestType, pictureUri); } }
Example 15
Source File: QiPick.java From quickimagepick with Apache License 2.0 | 4 votes |
/** * Use this in {@code onActivityResult(...)} of Activity or Fragment to retrieve image {@link Uri} * <br> * Note: for Fragments it's advised to use Fragment-specific overloads of this method * * @param pContext app {@link Context} * @param pRequestCode request code from {@code onActivityResult(...)} parameter * @param pResultCode result code from {@code onActivityResult(...)} parameter * @param pData Intent from {@code onActivityResult(...)} parameter * @param pCallback result callback * @return true if result was accepted by QuickImagePick * @see #handleActivityResult(Fragment, int, int, Intent, PickCallback) * @see #handleActivityResult(android.app.Fragment, int, int, Intent, PickCallback) */ @SuppressLint("NewApi") public static boolean handleActivityResult(@NonNull final Context pContext, final int pRequestCode, final int pResultCode, @Nullable final Intent pData, @NonNull final PickCallback pCallback) { if (pRequestCode != REQ_CAMERA && pRequestCode != REQ_GALLERY && pRequestCode != REQ_DOCUMENTS && pRequestCode != REQ_MULTIPLE) { return false; } final int requestType = PreferenceManager.getDefaultSharedPreferences(pContext) .getInt(PREFS_REQUEST_TYPE, 0); if (pResultCode == Activity.RESULT_OK) { if (pRequestCode == REQ_DOCUMENTS) { handleResultFromDocuments(requestType, pCallback, pData); } else if (pRequestCode == REQ_GALLERY) { handleResultFromGallery(requestType, pCallback, pData); } else if (pRequestCode == REQ_CAMERA) { handleResultFromCamera(pContext, requestType, pCallback, pData); } else if (pData == null || pData.getData() == null && API_18 && pData.getClipData() == null) { handleResultFromCamera(pContext, requestType, pCallback, pData); } else { handleResultFromDocuments(requestType, pCallback, pData); } final String lastCameraUriString = PreferenceManager.getDefaultSharedPreferences(pContext) .getString(PREFS_LAST_CAMERA_URI, null); final Uri lastCameraUri = TextUtils.isEmpty(lastCameraUriString) ? null : Uri.parse(lastCameraUriString); if (lastCameraUri != null) { pContext.getApplicationContext() .revokeUriPermission(lastCameraUri, Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION); } } else { if (pRequestCode == REQ_DOCUMENTS) { pCallback.onCancel(PickSource.DOCUMENTS, requestType); } else if (pRequestCode == REQ_GALLERY) { pCallback.onCancel(PickSource.GALLERY, requestType); } else if (pRequestCode == REQ_CAMERA) { pCallback.onCancel(PickSource.CAMERA, requestType); deleteLastCameraPic(pContext); } else { if (pData == null || pData.getData() == null && API_18 && pData.getClipData() == null) { pCallback.onCancel(PickSource.CAMERA, requestType); deleteLastCameraPic(pContext); } else { pCallback.onCancel(PickSource.DOCUMENTS, requestType); } } } return true; }
Example 16
Source File: AdvancedWebView.java From Android-AdvancedWebView with MIT License | 4 votes |
public void onActivityResult(final int requestCode, final int resultCode, final Intent intent) { if (requestCode == mRequestCodeFilePicker) { if (resultCode == Activity.RESULT_OK) { if (intent != null) { if (mFileUploadCallbackFirst != null) { mFileUploadCallbackFirst.onReceiveValue(intent.getData()); mFileUploadCallbackFirst = null; } else if (mFileUploadCallbackSecond != null) { Uri[] dataUris = null; try { if (intent.getDataString() != null) { dataUris = new Uri[] { Uri.parse(intent.getDataString()) }; } else { if (Build.VERSION.SDK_INT >= 16) { if (intent.getClipData() != null) { final int numSelectedFiles = intent.getClipData().getItemCount(); dataUris = new Uri[numSelectedFiles]; for (int i = 0; i < numSelectedFiles; i++) { dataUris[i] = intent.getClipData().getItemAt(i).getUri(); } } } } } catch (Exception ignored) { } mFileUploadCallbackSecond.onReceiveValue(dataUris); mFileUploadCallbackSecond = null; } } } else { if (mFileUploadCallbackFirst != null) { mFileUploadCallbackFirst.onReceiveValue(null); mFileUploadCallbackFirst = null; } else if (mFileUploadCallbackSecond != null) { mFileUploadCallbackSecond.onReceiveValue(null); mFileUploadCallbackSecond = null; } } } }
Example 17
Source File: PickImageHandler.java From AndroidCommons with Apache License 2.0 | 4 votes |
/** * Call this method from {@link Activity#onActivityResult(int, int, Intent)} method to * get picked contact info. */ @Nullable public static List<Uri> onResult(@NonNull Context context, int resultCode, @Nullable Intent data) { if (resultCode != Activity.RESULT_OK || data == null) { return null; } ClipData clip = null; if (Build.VERSION.SDK_INT >= 18) { clip = data.getClipData(); } final List<Uri> uris; if (clip != null) { uris = new ArrayList<>(); for (int i = 0, size = clip.getItemCount(); i < size; i++) { uris.add(clip.getItemAt(i).getUri()); } } else if (data.getData() != null) { uris = Collections.singletonList(data.getData()); } else { uris = Collections.emptyList(); } // Trying to get persistable read permissions if (Build.VERSION.SDK_INT >= 19) { final int readFlag = Intent.FLAG_GRANT_READ_URI_PERMISSION; if ((data.getFlags() & readFlag) == readFlag) { for (Uri uri : uris) { try { context.getContentResolver().takePersistableUriPermission(uri, readFlag); } catch (Exception ignored) { // Persistable permission was not granted, ignoring } } } } return uris; }
Example 18
Source File: MainActivity.java From Os-FileUp with MIT License | 4 votes |
@Override protected void onActivityResult(int requestCode, int resultCode, Intent intent){ super.onActivityResult(requestCode, resultCode, intent); if(Build.VERSION.SDK_INT >= 21){ Uri[] results = null; /*-- if file request cancelled; exited camera. we need to send null value to make future attempts workable --*/ if (resultCode == Activity.RESULT_CANCELED) { if (requestCode == file_req_code) { file_path.onReceiveValue(null); return; } } /*-- continue if response is positive --*/ if(resultCode== Activity.RESULT_OK){ if(requestCode == file_req_code){ if(null == file_path){ return; } ClipData clipData; String stringData; try { clipData = intent.getClipData(); stringData = intent.getDataString(); }catch (Exception e){ clipData = null; stringData = null; } if (clipData == null && stringData == null && cam_file_data != null) { results = new Uri[]{Uri.parse(cam_file_data)}; }else{ if (clipData != null) { // checking if multiple files selected or not final int numSelectedFiles = clipData.getItemCount(); results = new Uri[numSelectedFiles]; for (int i = 0; i < clipData.getItemCount(); i++) { results[i] = clipData.getItemAt(i).getUri(); } } else { results = new Uri[]{Uri.parse(stringData)}; } } } } file_path.onReceiveValue(results); file_path = null; }else{ if(requestCode == file_req_code){ if(null == file_data) return; Uri result = intent == null || resultCode != RESULT_OK ? null : intent.getData(); file_data.onReceiveValue(result); file_data = null; } } }
Example 19
Source File: MyAdvancedWebView.java From SlimSocial-for-Facebook with GNU General Public License v2.0 | 4 votes |
public void onActivityResult(final int requestCode, final int resultCode, final Intent intent) { if (requestCode == mRequestCodeFilePicker) { if (resultCode == Activity.RESULT_OK) { if (intent != null) { if (mFileUploadCallbackFirst != null) { mFileUploadCallbackFirst.onReceiveValue(intent.getData()); mFileUploadCallbackFirst = null; } else if (mFileUploadCallbackSecond != null) { Uri[] dataUris = null; try { if (intent.getDataString() != null) { dataUris = new Uri[]{Uri.parse(intent.getDataString())}; } else { if (Build.VERSION.SDK_INT >= 16) { if (intent.getClipData() != null) { final int numSelectedFiles = intent.getClipData().getItemCount(); dataUris = new Uri[numSelectedFiles]; for (int i = 0; i < numSelectedFiles; i++) { dataUris[i] = intent.getClipData().getItemAt(i).getUri(); } } } } } catch (Exception ignored) { } mFileUploadCallbackSecond.onReceiveValue(dataUris); mFileUploadCallbackSecond = null; } } } else { if (mFileUploadCallbackFirst != null) { mFileUploadCallbackFirst.onReceiveValue(null); mFileUploadCallbackFirst = null; } else if (mFileUploadCallbackSecond != null) { mFileUploadCallbackSecond.onReceiveValue(null); mFileUploadCallbackSecond = null; } } } }
Example 20
Source File: DialogShowPicker.java From cordova-ourcodeworld-filebrowser with MIT License | 4 votes |
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { firstTime = false; JSONArray jsonArray = new JSONArray(); // Retrieve file, folders paths if (requestCode == FILE_CODE && resultCode == Activity.RESULT_OK) { if (data.getBooleanExtra(FilePickerActivity.EXTRA_ALLOW_MULTIPLE, false)) { // For JellyBean and above if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { ClipData clip = data.getClipData(); if (clip != null) { for (int i = 0; i < clip.getItemCount(); i++) { jsonArray.put(clip.getItemAt(i).getUri().toString()); } } // For Ice Cream Sandwich } else { ArrayList<String> paths = data.getStringArrayListExtra (FilePickerActivity.EXTRA_PATHS); if (paths != null) { for (String path: paths) { jsonArray.put(Uri.parse(path).toString()); } } } } else { jsonArray.put(data.getData().toString()); } } // Send information Intent intent = new Intent(); intent.putExtra("information", jsonArray.toString()); intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); setResult(Activity.RESULT_OK, intent); finish(); }