
AndroidStudioでBroadcastReceiverクラス内でActivityクラスを取得したいのですが、どうすれば取得できますでしょうか?
BroadcastReceiverクラス内で
Intent intent1 = new Intent(activity.getApplication(), Error.class);
activity.startActivity(intent1);と入力すると startActivity の部分が赤字になってしまうのですが
Activity activity = new Activity();とし
....activity. startActivity などとしても変数が灰色で困っています。
AndroidStudioでBroadcastReceiverクラス内でActivityクラスを取得したいのですが、どうすれば取得できるか教えてください。
目的
Android端末のWi-Fiの接続が切れた時にエラー画面に遷移させたい。
参考
https://kokufu.blogspot.jp/2016/12/android-wi-fi …
----
import android.content.IntentFilter;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
// Activity 等の Context の中で
WifiConnectionWatcher mWifiConnectionWatcher = new WifiConnectionWatcher();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
protected void onResume() {
super.onResume();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION); // "android.net.wifi.STATE_CHANGE"
registerReceiver(mWifiConnectionWatcher, intentFilter);
}
@Override
protected void onPause() {
super.onPause();
unregisterReceiver(mWifiConnectionWatcher);
}
}
ーーー
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.net.NetworkInfo;
import android.net.wifi.WifiManager;
import android.util.Log;
import static android.content.ContentValues.TAG;
public class WifiConnectionWatcher extends BroadcastReceiver {
Activity activity = new Activity();
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) { // "android.net.wifi.STATE_CHANGE"
NetworkInfo info = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
switch (info.getState()) {
case DISCONNECTED:
Intent intent1 = new Intent(activity.getApplication(), Error.class);
activity.startActivity(intent1);
break;
case SUSPENDED:
break;
case CONNECTING:
break;
case CONNECTED:
break;
case DISCONNECTING:
break;
case UNKNOWN:
Log.e(TAG, "Wifi connection state is UNKNOWN");
break;
default:
Log.e(TAG, "Wifi connection state is OTHER");
break;
}
}
}
}
----
import android.app.Activity;
import android.os.Bundle;
public class Error extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.error);
}
}
-----
<activity android:name=".Error"></activity>
<receiver android:name=".WifiConnectionWatcher">
<intent-filter>
<action android:name="android.net.wifi.STATE_CHANGED">
</action></intent-filter>
</receiver>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javaでアプレットの描画が出来ない
-
どうしてもプログラムが動いて...
-
importとextendsの用い方の違い...
-
シャットダウンフックが呼ばれない
-
javaで画像を回転縮小
-
アプレットビューアで文字が表...
-
Selenium IDEでexportしたコー...
-
eclipseに記述したjavaファイル...
-
java通信について
-
JTableでスクロールバーが表示...
-
ある年月の前月(月の開始日)...
-
<forEach> 内で供給された "ite...
-
ループ処理の際、最後だけ","を...
-
System.err. printlnとSystem.o...
-
IF関数でEmpty値を設定する方法。
-
C言語のポインターに関する警告
-
System.out.printlnの出力先
-
flush()とclose()について
-
ORA-01858: 数値を指定する箇所...
-
動的配列が存在(要素が有る)か...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<forEach> 内で供給された "ite...
-
eclipseに記述したjavaファイル...
-
setAttribute(String, int)は適...
-
「例外 *** は対応する try 文...
-
干支の計算で。。。
-
Javaを使ってデジタル時計を作...
-
生年月日と今日の日付から年齢...
-
ActionForm form にnullが入っ...
-
Javaで常駐するソフトを作って...
-
importするには java.io.*; imp...
-
フレームの×ボタンを押しても閉...
-
【JAVAエラー】互換性のない型...
-
シャットダウンフックが呼ばれない
-
アルファベットのソート
-
itextの日本語のエラー(バージ...
-
Java Applet での虫食い算での質問
-
【java】検索フォームの検索結...
-
文字サイズが可変のラベル
-
python OpenPyXLを使って出力結...
-
JTextAreaのサイズについて
おすすめ情報