警告の解決方法が知りたい。「The method start() from the type MainActivity is never used locally」
private void start() の部分で、「The method start() from the type MainActivity is never used locally」という警告が出ています。どう修正すべきかご教示いただけないでしょうか。
package com.jp.hoge;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Timer;
import java.util.TimerTask;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
// マニフェストに <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> を追加すること。
import android.app.Activity;
import android.os.Bundle;
import android.widget.ListView;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
private Timer timer;
private void start() {
// タイマーの初期化
if (timer == null) {
timer = new Timer();
timer.schedule(new TimerTask() {
// タイマーの実行回数
private int i;
// 信号強度の合計
private double sum;
// 信号強度の取得部分。
private double getStrength() {
WifiManager wifi = (WifiManager)getSystemService(WIFI_SERVICE);
WifiInfo info = wifi.getConnectionInfo();
String[] apInfo = new String[4];
int rssi = info .getRssi();
int level = WifiManager.calculateSignalLevel(rssi, 5);
apInfo[3] = String.format("RSSI : %d / Level : %d/4", rssi, level);
return rssi;
}
// タイマー実行時に呼び出される。
// 1秒間隔で信号強度を取得し、10回に1回送信を行う
@Override
public void run() {
try {
// 実行回数が5, 15, 25, 35…であれば送信
if (++i % 10 == 5) {
// URLの生成部分。http://192.168.0.2/index.php?RSSI=80 といった具合に、RSSIを引数で渡す。
URL url = new URL(
"http://192.168.0.2/index.php?RSSI=" + Math.round(sum / 5));
HttpURLConnection cn = (HttpURLConnection) url.openConnection();
// 送信
cn.getResponseCode();
// 切断
cn.disconnect();
}
// 実行回数が5の倍数であれば強度の和をリセット
if (i % 5 == 0) {
sum = 0;
}
// 現在の強度を加算
sum += getStrength();
} catch (Exception e) {
// TODO エラー処理
}
}
}, 0, 1000); // 上のrunを0ミリ秒後から1000ミリ秒間隔で実行する
}
}
private void stop() {
// タイマーの停止
if (timer != null) {
timer.cancel();
timer = null;
}
}
}