ローカルの Wifi (インターネット接続ではない) で実行されるアプリを作成しました。Gmail またはメール アプリを介してメールを送信する必要があります。だから私はそれを強制的に3G接続にしたいと思います。私はこれをやった:
if (imageLoaded) {
ConnectivityManager cm =
(ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo ni = cm.getActiveNetworkInfo();
if (ni == null) {
}else{
if (ni.getType() == ConnectivityManager.TYPE_WIFI
|| ni.getType() == ConnectivityManager.TYPE_WIMAX) {
WifiManager wm = (WifiManager)getSystemService(Context.WIFI_SERVICE);
if (wm != null)
System.out.println(wm.disconnect());
}
while (true) {
ni = cm.getActiveNetworkInfo();
if (ni != null && ni.getType() == ConnectivityManager.TYPE_MOBILE
&& ni.isConnected()) {
sendOnClick();
break;
}
}
}
}
送信コードは次のとおりです。
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_EMAIL, adress);
intent.putExtra(Intent.EXTRA_SUBJECT, subject);
intent.putExtra(Intent.EXTRA_TEXT, emailBody);
Uri fileUri = Uri.fromFile(file);
intent.putExtra(Intent.EXTRA_STREAM, fileUri);
try {
startActivity(Intent.createChooser(intent, "mail"));
}
しかし、問題は、メールが送信されたときに通知を受ける方法がわからないため、ローカルの Wifi に再接続できることです。これを達成する方法について何か考えはありますか?