详细问题描述(已经解决)
在alpha版本里面appendJsFile(""); setJsFile( "" );失效
在普通版本里面的appendJsFile(""); setJsFile( "" );正常
测试代码,分别用alpha版本和普通版本打包之后,alpha版本打包的app不能执行,普通版本打包可以执行
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Webview Example</title>
<meta content="width=device-width, initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" name="viewport">
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
var nw=plus.webview.create("http://xw.qq.com/");
nw.appendJsFile("/js/1.js"); //1.js里面为 alert("H");
nw.setJsFile( "/js/1.js" );
nw.show();
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
添加Webview窗口预加载js文件
</body>
</html>
6 个回复
LLgg (作者)
已经找到解决方法了,用alpha版本打包的app,必须启用js原生混稀功能,appendJsFile(""); setJsFile( "" );才会生效
DCloud_Android_ST
什么平台?版本号多少?
LLgg (作者)
因为使用普通版本的打包的app,启动页面会出现闪屏情况,
所以,就使用alpha版本打包app,alpha版本打包之后,启动页面正常,
但是alpha版本里面的appendJsFile(""); setJsFile( "" );失效,
alpha版本:2017.5.30,
昨天刚更新的最新版本的alpha
DCloud_Android_ST
android?
2017-05-31 15:31
LLgg (作者)
回复 DCloud_Android_ST:是
2017-05-31 15:36
DCloud_Android_ST
回复 LLgg:你好 我这里测试没有发现你描素的问题,你可以在你的js里增加日志,看是否有日志输出。
2017-05-31 15:43
LLgg (作者)
就是下面一段同样的代码,分别放到alpha版本和普通版本打包,
alpha版本不执行embed.setJsFile,
普通版本执行embed.setJsFile,
alpha版本和普通版本都为最新版本,安卓版。
1.js
DCloud_Android_ST
提供一下plus.runtime.innerVersion 值
DCloud_App_Array
此功能与“启用js原生混淆”无关。
在“HBuilder 8.1.4.201705271954”上真机运行&提交云端打包验证没有重现此问题。
请确认此重现此问题的alpha版本号。
确认是否真机运行是否可重现,如果提交云端打包才出现请提交重现此问题的apk。