fix error when import file from content uri

This commit is contained in:
hyb1996
2017-07-12 13:44:09 +08:00
parent 593abe630f
commit 840318218b
3 changed files with 50 additions and 6 deletions

View File

@@ -1,6 +1,7 @@
package com.stardust.scriptdroid.external.open;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.text.TextUtils;
@@ -10,6 +11,8 @@ import com.stardust.scriptdroid.ui.BaseActivity;
import com.stardust.scriptdroid.ui.main.MainActivity;
import com.stardust.scriptdroid.R;
import java.io.FileNotFoundException;
/**
* Created by Stardust on 2017/2/2.
*/
@@ -30,13 +33,25 @@ public class ImportIntentActivity extends BaseActivity {
@Override
protected void onNewIntent(Intent intent) {
handleIntent(intent);
try {
handleIntent(intent);
} catch (FileNotFoundException e) {
e.printStackTrace();
Toast.makeText(this, R.string.edit_and_run_handle_intent_error, Toast.LENGTH_LONG).show();
finish();
}
}
private void handleIntent(Intent intent) {
final String path = intent.getData().getPath();
if (!TextUtils.isEmpty(path))
MainActivity.importScriptFile(this, path);
private void handleIntent(Intent intent) throws FileNotFoundException {
Uri uri = intent.getData();
if (uri != null && "content".equals(uri.getScheme())) {
MainActivity.importScriptFileByInputStream(this, getContentResolver().openInputStream(uri));
} else {
final String path = intent.getData().getPath();
if (!TextUtils.isEmpty(path)) {
MainActivity.importScriptFile(this, path);
}
}
finish();
}