我有一个应用程序,调用"App1".在我的App1中,我调用了Camera应用程序.
intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.android.camera","com.android.camera.Camera"));
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
之后,我使用FileObserver来监听用户是否拍照.当这发生时,我打电话
Context ctx = App1.this.getApplicationContext();
Intent j = new Intent(ctx, App1.class);
j.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
j.putExtra("type", 1);
startActivity(j);
Run Code Online (Sandbox Code Playgroud)
它工作,我的意思是它让我的应用程序前面如何离开它,但我需要传递一个称为"类型"的整数.我想,我的应用程序将调用"onResume()"但是如何获得额外的整数.这种类型的传递在我的应用程序中没有做任何事情.
在onCreate方法中有Bundle savedInstanceState,但在onResume方法中没有这样的东西.所以,我需要你的帮助才能解决这个问题.提前致谢.
好吧,在我的应用程序中,我正在使用Android的默认摄像头和图库,其中startActivityforResult为;
Intent i = new Intent("android.intent.action.PICK",
MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
i.setType("image/*");
startActivityForResult(i, this.SELECT_PICTURE);
Run Code Online (Sandbox Code Playgroud)
我也能够捕获onActivityResult.但是,如果内存很少并且我开始这个活动,我经历过该系统正在杀死我的父活动,即使活动返回一个值,我也丢失了所有的局部变量(并再次调用onCreate()).只应再次调用onResume().
我试了几次,我很确定它与内存问题有关.如果有足够的内存进程成功执行.我该如何防止这种行为?
由于Android不会在前台杀死应用程序,我还可以使用此功能吗?我认为我的问题与此问题几乎相似.
@Override
public void onSaveInstanceState(Bundle savedInstanceState){
super.onSaveInstanceState(savedInstanceState);
}
@Override
public void onRestoreInstanceState(Bundle savedInstanceState){
super.onRestoreInstanceState(savedInstanceState);
}
Run Code Online (Sandbox Code Playgroud)