从 Intent 中获取结果
Posted
技术标签:
【中文标题】从 Intent 中获取结果【英文标题】:Get result from an Intent 【发布时间】:2021-12-13 16:18:27 【问题描述】:我想用 registerForActivityResult 检查 ACTION_MANAGE_OVERLAY_PERMISSION 而这段代码不起作用,当我检查权限时,没有出现 Toast “Ok”
mStartForResult.launch(new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION));
ActivityResultLauncher<Intent> mStartForResult = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(),
new ActivityResultCallback<ActivityResult>()
@Override
public void onActivityResult(ActivityResult result)
if (result.getResultCode() == Activity.RESULT_OK)
Toast.makeText(MainActivity.this,"Ok",Toast.LENGTH_SHORT).show();
);```
【问题讨论】:
【参考方案1】:那个Intent
动作is not documented to return anything。所以,你永远不会得到Activity.RESULT_OK
。
【讨论】:
那么我怎么知道权限是否被检查? @dani:大概是打电话给canDrawOverlays()
。
好的,我会试试的。
它工作,谢谢。以上是关于从 Intent 中获取结果的主要内容,如果未能解决你的问题,请参考以下文章
Android基础利用Intent在Activity之间传递数据
发送失败结果ResultInfo {who = null,request = 1,result = -1,data = Intent {dat = content://com.android.cont