我有一个"活动",它运行WebView
,将一些JS注入到一个站点(我无法控制),并返回一些数据。我需要在后台做同样的事情,提供服务。我该怎么做?
注意:我已经在使用IntentService
、AlarmManager
和BroadcastReceivers
。我只想知道实现此服务的更好方法(WebView、Http客户端等)
Ps。:我认为,如果我通过服务实例化WebView
0Wx0,那将是肮脏的。我错了吗?
Ps:我读了一些关于HttpClient的文章,但我不知道它是否对我有用。
谢谢!
webView.loadUrl()是异步
所以它已经在后台线程上了:它立即返回,WebView继续在一个单独的线程上工作。
要获取WebView页面加载的回调,请使用WebViewClient.onPageFinished(....)
让您的服务创建一个新的webview活动。因此,在后台的某个事件上,您可以启动webview活动并执行相同的操作。根据事件的类型,您可以使用intetService,也可以使用粘性长时间运行的服务