cordova打包android apk出现空白页(无法显示)

几经波折,终于通过cordovaapk文件打包出来了。但是安装到手机上,发现显示空白页。

查找了好久,最后把 apk 解压缩,打开路径assets\www下面的index.html文件,发现两个问题:

  1. index.html里面引用的js文件和打包后的文件hash对不上(主要是部分js文件hash对不上);
  2. index.html 里面引用的css和js 都重复(引用了两次)了;

格式化后的 index.html:
图片描述

最后我将通过npm run build打包后生成的文件中的index.html文件格式化,删除里面引用了却在cssjs文件夹中找不到的文件,然后打包成 apk,重新安装到手机上还是显示空白页,真是气到冒烟~~~

————————————————————————

补充内容:

注意:为了方便(不需要每次打包都发送apk到手机上),可以通过cordova serve android来启动服务,用户可以通过http://localhost:8000/android/www/index.html来请求android平台下的页面,也就是相当于手机访问到的首页,如此一来方便调试了。

然后:浏览器请求到app中某个页面时,所有的css、js全部加载了,但是为什么显示白屏呢?也没有错误输出,疯了...

图片描述

阅读 9.5k
3 个回答

一共有两个问题:
1、路由模式不能使用history;
2、axios异步请求存在跨域问题;

解决方法参考

看起来跟 Cordova 没什么关系,是 webpack build 脚本的问题。

谢邀.
1 抛开cordova,直接用浏览器访问你生成的发布包,观察页面情况.
2 初步判定是路径问题导致资源引用不正确.
3 多次引入js css文件问题目前没遇到过,目测可能是webpack没配置好.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题