我想在同一个类中使用两个Intent,但它没有显示没有找到处理意图的Activity。它在activityforesult
中的Updf setOnClickListener
方法中显示错误。
这是我的班级
public class Electronic extends AppCompatActivity {
private Button Updf , Uimage;
private EditText Title , Description ;
private StorageReference storageReference;
private static final int GINT = 1 , pINT = 2;
private ProgressDialog bar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_electronic);
Updf = (Button) findViewById(R.id.Updf);
Uimage = (Button) findViewById(R.id.Uimage);
storageReference = FirebaseStorage.getInstance().getReference();
Updf.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent pdfintent = new Intent(Intent.ACTION_ALL_APPS );
startActivityForResult(pdfintent , pINT);
}
});
Uimage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, GINT);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Uri uri;
StorageReference refchild;
Log.v("REquest code" , String.valueOf(requestCode));
switch (requestCode)
{
case pINT :
if(resultCode != RESULT_OK)
return;
if (data.getData() == null ) {
return;
}
uri = data.getData();
refchild = storageReference.child(FirebaseAuth.getInstance().getCurrentUser().getEmail()).child("Document").child(UUID.randomUUID().toString());
refchild.putFile(uri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
bar.dismiss();
Toast.makeText(Electronic.this,"Document Uploaded" , Toast.LENGTH_SHORT).show();
}
});
break;
case GINT:
if(resultCode != RESULT_OK)
return;
if(data.getData() == null)
{
return;
}
bar.show();
uri = data.getData();
refchild = storageReference.child(FirebaseAuth.getInstance().getCurrentUser().getEmail()).child("Images").child(UUID.randomUUID().toString());
refchild.putFile(uri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
bar.dismiss();
Toast.makeText(Electronic.this,"Image Uploaded" , Toast.LENGTH_SHORT).show();
}
});
break;
}
}
}
发生的错误是
android.content.ActivityNotFoundException:找不到处理Intent的活动{act = android.intent.action.ALL_APPS} 在android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1809) 在android.app.Instrumentation.execStartActivity(Instrumentation.java:1523) 在android.app.Activity.startActivityForResult(Activity.java:4225) 在android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:50) 在android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:79) 在android.app.Activity.startActivityForResult(Activity.java:4183) 在android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:859) 在com.example.him.collegeapp.Electronic $ 1.onClick(Electronic.java:48) 在android.view.View.performClick(View.java:5637) 在android.view.View $ PerformClick.run(View.java:22429) 在android.os.Handler.handleCallback(Handler.java:751) 在android.os.Handler.dispatchMessage(Handler.java:95) 在android.os.Looper.loop(Looper.java:154) 在android.app.ActivityThread.main(ActivityThread.java:6119) at java.lang.reflect.Method.invoke(Native Method) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:886) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)