我正在使用crosswalk webview构建混合Android应用程序,因为我的应用程序需要webrtc支持。我有一个问题,因为cordova webview在Android版本上不稳定,也没有webrtc支持因此我们添加了crosswalk插件,那么为什么不使用crosswalk standalone。在这种情况下,我们还可以控制android的原生功能。那么使用cordova + crosswalk比使用人行横道webview有什么好处。
答案 0 :(得分:0)
Cordova是一个完整的HTML5开发框架,其中包含大量插件,可以帮助您使用Web API执行一些只有本机代码才能完成的工作。默认情况下,Cordova在Android上使用系统WebView。 相比之下,Crosswalk是一个HTML5引擎,其主要目的是提供更强大的WebView。如果您正在开发纯Web应用程序,建议使用Cordova,您可以通过安装Crosswalk插件将系统WebView替换为Crosswalk。但是,如果您已经拥有大量本机Java代码并且想要构建混合应用程序,那么直接使用Crosswalk的embedding API会更方便。
答案 1 :(得分:0)
如果您这样做,您基本上将网站重新打包到应用程序中。我不知道Android,但Apple肯定不会批准您的应用程序,这无论如何都无法使用混合框架。
答案 2 :(得分:0)
你可以做到,我有,你需要注意一些事情。 你会遇到错误,人行横道社区会变得更小,因此在常规地方找到错误的解决方案会更难找到。
然后你必须做出一些决定(空间方面)。在人行横道上,您有共享和嵌入模式。
https://crosswalk-project.org/documentation/shared_mode.html
您将遇到嵌入式模式的问题并使用x86和64位手机进行测试。 (您需要将gradle依赖项更改为64位)。 使用proguard和架构拆分,您可以将应用程序打包为“合理”大小(低于40mb),具体取决于资源文件夹的内容。 (嵌入模式)
作为一名java开发人员,我没有看到在大多数项目中使用cordova + crosswalk的优势,但我确实希望可以更频繁地更新可用于人行横道的文档。
要开始使用,请将其添加到您的gradle文件中:
(process:5700): xfce4-panel-wrapper-CRITICAL **: Not enough arguments are passed to the wrapper
xfce4-panel(external): test-8: child exited with status 512
(xfce4-panel:5695): xfce4-panel-WARNING **: Plugin test-8 exited with status 2, removing from panel configuration
xfce4-panel(external): test-8: plugin unrealized; quiting child
xfce4-panel(application): saving /panels/panel-2: ids=true, providers=false
(xfce4-panel:5695): GLib-CRITICAL **: g_child_watch_add_full: assertion 'pid > 0' failed
(xfce4-panel:5695): GLib-GObject-WARNING **: invalid unclassed pointer in cast to 'GtkObject'
(xfce4-panel:5695): exo-CRITICAL **: IA__exo_gtk_object_destroy_later: assertion 'GTK_IS_OBJECT (object)' failed