Androidアプリの開発を始めたばかりで、webviewがあります。特定の時刻から15分ごとにwebviewをリロードすることを願っていました。正しく理解していれば、これを達成するためにAlarmManagerを使用する必要があります。しかし、私は実際にAlarmManagerを使用する方法を得ていないので、誰かがこれで私を助けることができますか?たぶん小さな例か何か?speicific時にリロードするwebview
ありがとうございます!
また、私は文書を見ました。
public class MainActivity extends Activity {
// to make our alarm manager
AlarmManager alarmManager;
WebView myWebView;
private PendingIntent pendingIntent;
Context context;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
this.context = this;
//initialize alarm manager
//alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
// create instance of a calendar
//Calendar calendar = Calendar.getInstance();
// create an intent to Alarm Receiver class
Intent alarmIntent = new Intent(this.context, AlarmReceiver.class);
pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 0, alarmIntent, 0);
myWebView = (WebView) findViewById(R.id.webview);
myWebView.setWebViewClient(new WebViewClient());
myWebView.loadUrl("<some url goes in here>");
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
reloadWebView();
}
private void reloadWebView(){
AlarmManager alarmManger = (AlarmManager)getSystemService(ALARM_SERVICE);
int interval = 1000*60*15;
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.set(Calendar.HOUR_OF_DAY, 4);
calendar.set(Calendar.MINUTE,0);
alarmManger.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), interval, pendingIntent);
}
}
、ここではAlarmReceiverクラス だ
UPDATE ので、私はここにAlarmManagerを実装しようとしました...それは働いているとは思わない... ここに私の活動のファイルがあります...パブリッククラスAlarmReceiverはBroadcastReceiverを拡張します{
WebView myWebView;
@Override
public void onReceive(Context context, Intent intent) {
myWebView.reload();
Toast.makeText(context, "I'm running", Toast.LENGTH_SHORT).show();
}
}
私が間違っていることを誰に教えてもらえますか? ありがとうございました!
http://stacktips.com/tutorials/android/repeat-alarm-exampleに登録されていることを確認します-in-android –