だから私はwebviewベースのアプリを持っています。私の質問は、OnReceivedError
インターネットが失われたときに が呼び出されたときに、
ユーザーがダイアログで [OK] をクリックして接続を確認すると、
- 接続が利用可能な場合は、アラートを閉じて電話をかけます
web.reload();
- Web 接続 (wifi またはモバイル) がない場合は、電話してください
finish();
次の方法で解決:
アラート ダイアログの [ポジティブ] ボタンを次のように変更しました
.setPositiveButton(R.string.alert_dialog_ok,new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog,int id) {
問題は次のとおりでした
DialogInterface paramDialogInterface,int paramInt)
コンテキスト コンテキスト。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.context = this;
...
@Override
public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) {
AlertDialog.Builder localBuilder2 = new AlertDialog.Builder(
Webview_Main.this);
localBuilder2.setTitle(R.string.webview_error_received_title);
localBuilder2.setMessage(R.string.webview_error_received);
localBuilder2.setIcon(R.drawable.ic_launcher);
localBuilder2.setPositiveButton(R.string.alert_dialog_ok,new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int id) {
if(isNetworkAvailible(context))
web.reload();
else
finish();
}
};
localBuilder2.show();
};
isNetworkAvailible クラス
public boolean isNetworkAvailible(Context ctx) {
NetworkInfo info = (NetworkInfo) ((ConnectivityManager) ctx
.getSystemService(Context.CONNECTIVITY_SERVICE))
.getActiveNetworkInfo();
if (info == null || !info.isConnected()) {
return false;
}
if (info.isRoaming()) {
// here is the roaming option you can change it if you want to
// disable internet while roaming, just return false
return false;
}
return true;
}