我可能以错误的方式解决问题..
我正在做的是在没有互联网连接时显示警报消息,并且“确定”按钮将用户引导至 wifi 设置以打开互联网。当用户在更改(或不更改)互联网设置后返回它时,我希望应用程序执行的操作是重新加载应用程序或活动所在的位置。
为此,我正在对“确定”按钮进行以下调用:
static void startAct(Activity ctxt)
{
ctxt.startActivityForResult(new Intent(android.provider.Settings.ACTION_SETTINGS), WIFI_SETTINGS);
}
在显示此消息的活动类上,我有以下内容:
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == WIFI_SETTINGS && resultCode == RESULT_OK)
{
this.finish();
Intent myIntent = new Intent(this, MyActivity.class);
startActivity(myIntent);
}
}
但 resultCode 始终为 0,onActivityResult 在按下“确定”按钮后立即被调用。
我应该以不同的方式处理这个问题吗?当用户从 wifi 设置返回时,如何重新加载/刷新我的应用程序?
我检查了类似的答案,但他们似乎在同一个应用程序中使用了一个活动,所以他们可以打电话set_result(...)
,但我不能在这里这样做。
谢谢!