我有一个显示广告的视频播放器。当我单击视频播放器时,我会触发一个打开 URL 的 Intent。但是,如果有许多应用程序可以处理该 Intent,则会显示一个对话框。有没有可靠的方法来知道用户是否已关闭该对话框以便我可以恢复广告?
最佳答案
这就能解决问题:
使用startActivityForResult
触发 Intent ,如下所示
private static final Integer OPEN_BROWSER_REQUEST_CODE = 100;
[...]
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com"));
startActivityForResult(browserIntent, OPEN_BROWSER_REQUEST_CODE);
然后通过重写onActivityResult
来捕获结果,如下所示
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == OPEN_BROWSER_REQUEST_CODE) {
switch (resultCode) {
case RESULT_OK:
break;
case RESULT_CANCELED:
break;
}
}
super.onActivityResult(requestCode, resultCode, data);
}
希望这有帮助
关于android - 当用户关闭 Intent 对话框时获取回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28540476/