Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Webview内部广播接收器_Android - Fatal编程技术网

Android Webview内部广播接收器

Android Webview内部广播接收器,android,Android,我用android应用程序开发迈出了第一步。想要创建一个连接到网站的应用程序,填写表单并在提交后检查结果。该程序作为广播接收器每24小时执行一次 因为这个页面使用的是javascript,所以我使用了webview。但我认为,由于webview的异步行为,广播接收器对象在第一次加载页面之前被杀死 在onReceive方法中,我创建了一个新的webview对象。在webview中,我添加了一个JavascriptInterface,这样我就可以从页面中获取要解析的内容,以判断成功与否。onPage

我用android应用程序开发迈出了第一步。想要创建一个连接到网站的应用程序,填写表单并在提交后检查结果。该程序作为广播接收器每24小时执行一次

因为这个页面使用的是javascript,所以我使用了webview。但我认为,由于webview的异步行为,广播接收器对象在第一次加载页面之前被杀死

在onReceive方法中,我创建了一个新的webview对象。在webview中,我添加了一个JavascriptInterface,这样我就可以从页面中获取要解析的内容,以判断成功与否。onPageFinished调用广播接收器的成员方法,该方法启动表单填充过程

据我所知,当webview加载页面时,执行流将离开onReceive方法。在此之后,广播接收器被终止,webview也随之终止,它将永远无法完成页面加载

我正在考虑在离开onReceive方法之前等待一个特殊事件。但我不知道这是否是最好的解决方案,我如何才能做到这一点

提前谢谢,祝你一切顺利
r2p2从技术上讲,您甚至不能在广播接收器的上下文中显示WebView,因为它不是UI上下文

实现您的想法的最干净的方法是让您的接收者启动一个活动,然后在您的WebView工作完成后,该活动会自动退出


但是,如果不需要用户与WebView交互,则应考虑为自己创建Web服务,并使用原始HTTP请求检索、填写、提交和验证表单。

我不想显示WebView。但是我不能做原始的HTTP内容,因为页面使用JS生成/或加载身份验证过程所需的密钥。发起一项新活动听起来不错。它们在前景中繁殖吗?@r2p2是的,它们在前景中繁殖。然后我会将其设置在可能的解决方案列表中。但是我不想打断用户。只是想通过通知栏进行沟通(成功或失败)。