wifi状態の変更を受け取る必要があるアプリケーションを書いています。これを行うために、BroadcastReceiver を拡張するクラス TestReceiver を作成し、今度は Log.i に書き込みます。レシーバーは AndroidManifest 経由で登録されています。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.lazooo.wifi_finder_service">
<uses-sdk android:minSdkVersion="14"/>
<application android:icon="@drawable/icon" android:label="@string/app_name">
<user-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<user-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<receiver android:name=".TestReceiver">
<intent-filter>
<action android:name="android.net.wifi.WIFI_STATE_CHANGED"/>
<action android:name="android.net.wifi.STATE_CHANGE"/>
</intent-filter>
</receiver>
</application>
私の TestReceiver は次のとおりです。
package com.lazooo.wifi_finder_service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.widget.Toast;
public class TestReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.i("BroadcastApplication", "ricevuto capo");
Toast.makeText(context, "ciao", Toast.LENGTH_LONG).show();
}
}
問題は、wifiをオン/オフにしても何も起こらないということです。私は何が欠けていますか?