summaryrefslogtreecommitdiffstats
path: root/ui/src
diff options
context:
space:
mode:
authorBen Lin <linben@google.com>2017-03-08 16:05:00 -0800
committerBen Lin <linben@google.com>2017-03-10 16:02:34 -0800
commit0a1a4287841fa10274c610de31e08765ffa0c269 (patch)
treeee66dd9387b2a0bf6f2b7b83e7afb32456073688 /ui/src
parent496bb75d2707bf190a2055103ca6f1c574530fc2 (diff)
downloadandroid_packages_providers_DownloadProvider-0a1a4287841fa10274c610de31e08765ffa0c269.tar.gz
android_packages_providers_DownloadProvider-0a1a4287841fa10274c610de31e08765ffa0c269.tar.bz2
android_packages_providers_DownloadProvider-0a1a4287841fa10274c610de31e08765ffa0c269.zip
Add rawDocumentsUri handling to TrampolineActivity.
Test: Build, compiles, does not crash. Bug: 36033829 Change-Id: I8756c6abd872e4b14cff3c604c37f82323b44c27
Diffstat (limited to 'ui/src')
-rw-r--r--ui/src/com/android/providers/downloads/ui/TrampolineActivity.java15
1 files changed, 14 insertions, 1 deletions
diff --git a/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java b/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
index 5d4e7a45..41d7187a 100644
--- a/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
+++ b/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
@@ -23,17 +23,21 @@ import android.app.DialogFragment;
import android.app.DownloadManager;
import android.app.DownloadManager.Query;
import android.app.FragmentManager;
+import android.content.ActivityNotFoundException;
import android.content.ContentUris;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.database.Cursor;
+import android.net.Uri;
import android.os.Bundle;
+import android.provider.DocumentsContract;
import android.util.Log;
import android.widget.Toast;
import com.android.providers.downloads.Constants;
import com.android.providers.downloads.OpenHelper;
+import com.android.providers.downloads.RawDocumentsHelper;
import libcore.io.IoUtils;
@@ -53,8 +57,17 @@ public class TrampolineActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- final long id = ContentUris.parseId(getIntent().getData());
+ Uri documentUri = getIntent().getData();
+ if (RawDocumentsHelper.isRawDocId(DocumentsContract.getDocumentId(documentUri))) {
+ if (!RawDocumentsHelper.startViewIntent(this, documentUri)) {
+ Toast.makeText(this, R.string.download_no_application_title, Toast.LENGTH_SHORT)
+ .show();
+ }
+ finish();
+ return;
+ }
+ final long id = ContentUris.parseId(documentUri);
final DownloadManager dm = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
dm.setAccessAllDownloads(true);