Skip to content
This repository has been archived by the owner on Jun 3, 2021. It is now read-only.

分支0.20.3.0-beta下weex sdk问题 #2242

Closed
fanlvwen opened this issue Mar 25, 2019 · 26 comments
Closed

分支0.20.3.0-beta下weex sdk问题 #2242

fanlvwen opened this issue Mar 25, 2019 · 26 comments
Labels

Comments

@fanlvwen
Copy link

fanlvwen commented Mar 25, 2019

1.下载分支下代码
2.android studio的gradle中weex sdk依赖的源码,weex_inspector还是0.18.10的
此处均修改为最新gradle:
`
compile 'com.taobao.android:weex_sdk:0.20.3.0-beta'
compile 'com.taobao.android:weex_inspector:20190315-yk-bata1'

`
其他代码未动
3.主目录下weex debug examples,启动debug出现下图
image
4.android/ios run起来的项目见下图
image
此处可以看到,js framework均为0.29.0

5.点开chrome上js debug开关
image
js framework均为0.29.0

造成现象就是run起来的项目打开之后,会提示升级,如果选择升级,那么debug是看到jsframework为0.29.1

问题:1.已经是最新分支下代码,为何安卓和ios仍然提示升级,而且确实可以升级
2.不升级,js framework均为0.29.0,chrome开启js debug,安卓端是页面一直在loading,ios端是页面空白

@fanlvwen fanlvwen added the Bug label Mar 25, 2019
@fanlvwen
Copy link
Author

fanlvwen commented Mar 25, 2019

既然是debug,那肯定是要调试服务器上的js文件,类似**http://192.168.2.236:8089/weex/vue/index.js**,
所以我在下图填写了这个地址
image
,这样没错吧?

@erha19
Copy link
Contributor

erha19 commented Mar 26, 2019

@fanlvwen 用下面对齐的版本,对照文档版本兼容

compile 'com.taobao.android:weex_sdk:0.20.3.0-beta'
compile 'com.taobao.android:weex_inspector:20.20.3.0-beta'

问题:1.已经是最新分支下代码,为何安卓和ios仍然提示升级,而且确实可以升级

这是playground app 0.20.0版本没有将版本号的修改同步到github项目中导致的,后续会同步,不影响

2.不升级,js framework均为0.29.0,chrome开启js debug,安卓端是页面一直在loading,ios端是页面空白

根据文档上的版本对齐SDK,iOS-版本兼容, Android-版本兼容, 实在不行的话提供一下你打包出的android apk文件,我帮你看下错误原因

@fanlvwen
Copy link
Author

compile 'com.taobao.android:weex_sdk:0.20.3.0-beta' compile 'com.taobao.android:weex_inspector:20.20.3.0-beta'
这个我试过了,也是报错
image
稍后我打apk给你看下
多谢!

@fanlvwen
Copy link
Author

image
在这里输入

http://192.168.2.236:8089/weex/vue/index.js
页面可以正常展示:
image
但是点击任意item:
image
然后返回列表,再次点击,就报错

js-framework.js:1call [WEEX_CALL_JAVASCRIPT] error: jsframework has no such api

@fanlvwen
Copy link
Author

这是分支0.23.0-beta下源码打出的apk,辛苦帮我看一下
playground-debug.zip

@YorkShen
Copy link
Contributor

感谢你的反馈,Weex目前是隶属于Apache Software Foundation的项目,因此在Gtihub渠道我们鼓励使用英文反馈问题。下面我将使用Google Trasnlate将你的问题翻译成英语,并以英语回答。

Question Description: Weed sdk problem under branch 0.20.3.0-beta

Again, I think this is a bug about dev-tool, you should ask it in the weex-toolkit, not this repos.

But as you discussion happened here for a while, I think you could continue this time, but ask question about dev-tool in weex-toolkit next time.

Thanks

@YorkShen YorkShen added Tools and removed Bug labels Mar 26, 2019
@fanlvwen
Copy link
Author

@YorkShen thanks,This problem has been troubling me for a long time and never resolved,I'll keep watching

@erha19
Copy link
Contributor

erha19 commented Mar 26, 2019

@fanlvwen 这个包在我手机上运行是正常可用的,调试功能也是正常的,并没有发现你所说的报错:

js-framework.js:1call [WEEX_CALL_JAVASCRIPT] error: jsframework has no such api

你的页面代码是否有什么特殊的处理?

你试下不通过导航栏输入,而是直接扫码打开页面的方式试一下

@fanlvwen
Copy link
Author

代码是分支下载下来的源码,整份代码只改了

compile 'com.taobao.android:weex_sdk:0.20.3.0-beta' compile 'com.taobao.android:weex_inspector:20.20.3.0-beta'

这么说那问题应该出在weex debug examples这里,或者说是我本地环境问题,能告诉我你的环境配置吗? 包括node,npm,weex版本等

@fanlvwen
Copy link
Author

你这边通过导航栏输入地址:xxx/weex/vue/index.js,app打开的首页是一个demo的list对吧,点击cell能正确跳转吗?

@fanlvwen
Copy link
Author

@erha19 或者能麻烦你辛苦做一份开启js debug的操作流程吗,是在这个问题卡住我很久了,就差这debug临门一脚始终过不去。。。官方文档我看了几十遍了真的,对于开启了js debug之后如何操作表述不是很清楚。用之前的devtool是完全没问题的

@ZhuSky
Copy link

ZhuSky commented Mar 26, 2019

@erha19 我也有同样的问题

@erha19
Copy link
Contributor

erha19 commented Mar 26, 2019

@fanlvwen @ZhuSky 定位到问题了,这个是由于android上的WeexSDK 0.20.3.0-beta版本无法正确识别vue类型进入沙箱模式导致的,对应代码已修复,将会在下次release发布,最快两周内 @YorkShen 跟进

目前提供绕开这层验证的方式,及通过在url上指明bundleType=vue,如http://0.0.0.0:8080/index.js?bundleType=vue.

使用最新weex-toolkit 进行构建的用户可以通过升级 @weex-cli/debug 模块来绕开该问题。命令如下:

$ weex update @weex-cli/debug

@fanlvwen
Copy link
Author

@erha19 问题仍然存在

系统环境:
image

  1. chrome打开js debug,导航栏输入 http://192.168.2.236:8089/weex/vue/index.js?bundleType=vue打开app首页的list demo:
    image

  2. 点击app上Animation模块,跳转下一页,又加载了首页js,并且一直在loading:
    image

另外weex项目代码修改后保存,自动编译,再修改保存1-2次,app必现崩溃。

@fanlvwen
Copy link
Author

@ZhuSky 你升级后解决了吗?

@erha19
Copy link
Contributor

erha19 commented Mar 27, 2019

@fanlvwen loading这个你可以忽略,是目前android playground app没处理好页面渲染完成的事件 @YorkShen 帮忙看一下.

weex项目代码修改后保存,自动编译,再修改保存1-2次,app必现崩溃

这个问题在调试状态下很容易出现,原因时调试时期涉及的时序问题较为复杂,可能之前的时序还未完成,页面就刷新了,这样很容易导致sdk异常(这也是之前下掉自动刷新这块功能的原因之一),故调试期间正常调试不要有太多的代码修改,开发时可用weex preview命令进行页面开发

@fanlvwen
Copy link
Author

@erha19 preview到chrome上再用app扫码预览吗?这样感觉并没有提升效率。
debug开启情况下,我刚才测试了一下,保存一处weex代码,app会收到很多次刷新广播,页面很容易就卡住了。

之前用devtool习惯了直接开启debug,真机调试chrome看日志包括网络请求。
还能不能在weex-cli/debug上面把原来devtool那套同时支持呢?

### devtool那一套对于开发者来说 效率是最高的。

@fanlvwen
Copy link
Author

@erha19 chrome上的“页面“->二维码 展示不全,高度不够

@ZhuSky
Copy link

ZhuSky commented Mar 28, 2019

@fanlvwen
implementation 'com.taobao.android:weex_sdk:0.18.0@aar'
com.taobao.android:weex_inspector:0.13.4-multicontext
我目前 改用这两个进行调试,不过这个版本的sdk 貌似不支持 渐变

@fanlvwen
Copy link
Author

@ZhuSky 我一直用的这一版,配合devtool使用,调试整个文件夹效率很高,
你是怎么调试的?

@ZhuSky
Copy link

ZhuSky commented Mar 28, 2019

https://weex.apache.org参考这个调试的啊,你这个“怎么调试的” 让我怎么回答

@fanlvwen
Copy link
Author

我这边是
1 weex debug src -e index.vue 启动debug,chrome打开
2 app启动debug模式,chrome出现device list,点击inspector,开启了调试页面
3 app打开activity,里面
`

mInstance.renderByUrl("trainList", "http://192.168.2.188:8088/weex/ui/Cooperation.js", map, null, WXRenderStrategy.APPEND_ASYNC);

`

chrome就自动输出日志之类的了

你的步骤是咋样的?

@ZhuSky
Copy link

ZhuSky commented Mar 28, 2019

基本一致

@fanlvwen
Copy link
Author

那同病相怜,新版weex-cli/debug不适合之前我们这样debug了,感觉内部编译方式全部变了

@ZhuSky
Copy link

ZhuSky commented Mar 28, 2019

等等 新的sdk 吧

@YorkShen
Copy link
Contributor

Please update to 0.24.0

It seems the issue is fixed, I will just close it.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

4 participants