按 activity 结果意图中的后退按钮时应用关闭
App closed when pressing back button from activity results intent
StartActivityForResults 已弃用。所以我使用新的 getting result from activity 方法来处理 select PDF 文件。一切正常,但如果意图从我的应用程序开始到 select 文件,并且如果从该意图按下后退按钮,应用程序将关闭。
ActivityResultLauncher<String> mGetContent = registerForActivityResult(new GetContent(),
new ActivityResultCallback<Uri>() {
@Override
public void onActivityResult(Uri uri) {
// Handle the returned Uri
}
});
@Override
public void onCreate(@Nullable savedInstanceState: Bundle) {
// ...
Button selectButton = findViewById(R.id.select_button);
selectButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
// Pass in the mime type you'd like to allow the user to select
// as the input
mGetContent.launch("application/pdf");
}
});
}
任何帮助请...
经过一番努力,我发现如果我们在没有选择任何文件的情况下按下后退按钮,activity 结果将 returns 为空。
所以我们应该检查activity结果是否不等于null然后做一些操作。
ActivityResultLauncher<String> mGetContent = registerForActivityResult(new GetContent(),
new ActivityResultCallback<Uri>() {
@Override
public void onActivityResult(Uri uri) {
if(uri!=null){
// Handle the returned Uri
}
}
});
添加到清单 android:parentActivityName
,在后面按应用程序打开父级 activity
示例:
<activity
android:name=".FileActivity"
android:parentActivityName=".Menu"/>
StartActivityForResults 已弃用。所以我使用新的 getting result from activity 方法来处理 select PDF 文件。一切正常,但如果意图从我的应用程序开始到 select 文件,并且如果从该意图按下后退按钮,应用程序将关闭。
ActivityResultLauncher<String> mGetContent = registerForActivityResult(new GetContent(),
new ActivityResultCallback<Uri>() {
@Override
public void onActivityResult(Uri uri) {
// Handle the returned Uri
}
});
@Override
public void onCreate(@Nullable savedInstanceState: Bundle) {
// ...
Button selectButton = findViewById(R.id.select_button);
selectButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
// Pass in the mime type you'd like to allow the user to select
// as the input
mGetContent.launch("application/pdf");
}
});
}
任何帮助请...
经过一番努力,我发现如果我们在没有选择任何文件的情况下按下后退按钮,activity 结果将 returns 为空。 所以我们应该检查activity结果是否不等于null然后做一些操作。
ActivityResultLauncher<String> mGetContent = registerForActivityResult(new GetContent(),
new ActivityResultCallback<Uri>() {
@Override
public void onActivityResult(Uri uri) {
if(uri!=null){
// Handle the returned Uri
}
}
});
添加到清单 android:parentActivityName
,在后面按应用程序打开父级 activity
示例:
<activity
android:name=".FileActivity"
android:parentActivityName=".Menu"/>