数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 5075|回复: 30

[其他] 支持电视机顶盒的app,最低安卓4.1系统,目前测试阶段

[复制链接]
发表于 2021-8-31 15:58:20 | 显示全部楼层 IP属地:江苏无锡
本帖最后由 人生之际 于 2021-8-31 16:16 编辑

网络播放直播电视台内容肯定要缓冲的,哪有IPTV那么直接啊,有些可以优化到本省的(比如我用江苏电信的宽带,它能连接到江苏电信的源),还能快点。安卓模拟器上试了TV版,有个提示信息,然后就没有了,一直不再有任何动作
模拟器里是安卓7.1.2的


==网上搜的解决方案,我猜测是最后一个:包名忘了同步改了,Debug正常,打包正式版后出错==============
日志错误
Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 1 path $
出现的场景
1. 一种是所有接口都出现这个问题,一种是个别接口出现这个问题。

2. debug场景下能够正常使用,打正式版的包使用时只要跑接口就出现这个错误;

分析
1. 百度过很多博客,大多数报的是json解析错误,使用gson解析错误。但是debug使用的时候是正常的,所以排除;

2. 也有说是传的数据由空格的原因,这个我也一一排查了。我获取的数据都 et.getText().toString().trim(); 处理过了,也排除;

3. 接口编写的问题我也查过,并没有任何问题,debug情况下是能够正常使用,所以排除;

4. 也有说是路径问题,用的是同一个路径,这个也排除;

5. 最后,唯一的不同是打包方式不一样。打包引起不一样的地方,那就只能是代码混淆的问题。出现第一条的时候排查了好久,发现混淆的代码也是没有问题,后来才发现对应这个接口的entity类,没有放到entity里面,导致混淆的时候出现无法解析的情况。修改即可使用。第二个场景是修改了包名,忘记更新混淆文件proguard-rules.pro里面的内容。

解决
#---------------------------------实体类---------------------------------
##修改成你对应的包名(com.xxx.xxxx指的是包名)
#实体类不参与混淆 com\xxx\xxxx\mvp\model\entity
-keep class com.xxx.xxxx.mvp.model.entity.** { *; }
-keep class com.jess.arms.widget.** { *; } #自定义控件不参与混淆
-keep class com.xxx.xxxx.mvp.ui.widget.** { *; } #自定义控件不参与混淆
1. 检查实体类位置是不是写对了;

2. 检查你的现在的包名是不是对得上proguard-rules.pro里面的包名。若不一样,打正式版时必然出现无法使用的情况。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-13 20:24 , Processed in 0.078000 second(s), 9 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表