У меня есть приложение для Android, и я хочу обновлять его экран каждые 5 минут для моего веб-сайта. Может ли кто-нибудь помочь?
Вот мой код
public class MainActivity extends Activity {
private WebView mWebView;
static {
System.loadLibrary("native-lib");
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mWebView = (WebView) findViewById(R.id.activity_main_webview);
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
mWebView.setWebViewClient(new WebViewClient());
mWebView.loadUrl("https://google.com/");
}
public native String stringFromJNI();
}
Возможный дубликат Периодическое автоматическое обновление Android WebView
Попробуйте это Решение 1:
Timer timer = new Timer ();
TimerTask hourlyTask = new TimerTask () {
@Override
public void run ()
{
mWebView.loadUrl("https://google.com/");
}};
timer.schedule (hourlyTask, 0l, 5000*60*60);
Решение 2:
public void reloadWebView() {
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
mWebview.loadUrl("http://www.google.com");
}
}, 50000);}
вызвать reload()
метод onCreate()
public void reload() {
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
// Do something after 5min = 50000ms
Toast.makeText(LogThirdPager.this, "Hello", Toast.LENGTH_SHORT).show();
reload();
// mWebview.loadUrl("http://www.google.com");
}
}, 50000);
}
Вы можете использовать TimerTask каждые 5 минут, как показано ниже "
Timer timer=new Timer();
TimerTask timerTask = new TimerTask() {
@Override
public void run() {
if (webView!=null)
reload(); // reload your webview
}
};
timer.scheduleAtFixedRate(timerTask,0,300000); // 300000 ms = 5 minutes
попробуйте этот stackoverflow.com/a/28255478/9408181