开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 11107|回复: 4
收起左侧

[火山安卓源码] 【day5】相同英文包名研究,中文不同的包名也冲突?

[复制链接]

结帖率:0% (0/1)
发表于 2019-5-31 15:20:58 | 显示全部楼层 |阅读模式   广东省深圳市

欢迎大家又一次来到雪山凌狐教程关于火山安卓的研究小课堂,今天我们来研究一下当在火山软件平台中不同项目设定的中文包名不同,但是声母的首字母顺序组合起来相同的场景下,所生成的安卓app的包名是否会相同,以及如果同时安装到一个机器上会不会出现冲突或替换的情况。


首先我们建立了两个新的火山项目,他们的包名分别是:

“雪山凌狐.学火山.day5.宝贝真好”和“雪山凌狐.学火山.day5.背包转换”。

很明显的我们可以看到他们转换为声母的英文包名后名字均为:xshlh.xhsh.day5.bbzhh

那么他们在实际安装的时候会不会有什么冲突呢?大家接下来就跟随我的脚步,一起来探究一下。

首先贴一下两个项目的源码内容,我设计的窗口内容不多,就一个文本框用来区分是第一个项目还是第二个项目而已。前述所说的宝贝真好为第一个项目,而背包转换为第二个项目。





同时我也将他们的项目属性设定得不一样:



接下来就是实际测试了。首先我们来安装一下第一个项目,安装很正常。

如何查看对应的包名呢?我们可以使用一款火山官方推荐的小助手——开发者助手来查看。大家可以在火山官方文档的“无障碍服务支持”的部分找到该助手的下载说明:http://doc.voldp.com/

我也在这里贴一遍(后面我也会把apk文件放在源码同一下载目录下大家可以下载使用):

下载“开发者助手”APP

① 可进入酷安网下载:

https://www.coolapk.com/apk/com.toshiba_dealin.developerhelper

② 本程序的主要作用:获取APP组件ID值,通过获取的ID值可实现对该组件进行一些操作。

③ 例如:模拟点击、获取组件内容等。

④ 安装完毕后,会在手机上看到下图所示的软件图标。

⑤ 注意:手机务必ROOT后才能正常使用本软件。

打开刚才的第一个项目程序,然后使用开发者助手来分析。

可以看到编译后的包名应为xshlh.xhsh.day5.bbzhh.rg_qdl,如果对上一节课还有印象的同学应该可以记得我们的源码文件好像是存在一个叫做rg_qdl.java的文件中的。这就很有趣了。



好接下来我们来用动图演示安装英文会同名的包名的项目的场景。当然在此之前需要把当前活动项目替换为第二个项目,这个之前教过大家了。


我们发现神奇的现象诞生了!那就是还真是判定为同一个包名!包名同样还是:xshlh.xhsh.day5.bbzhh.rg_qdl。这就使得模拟器将刚才的宝贝真好项目给自动卸载了,自动安装了后面来的背包转换项目!

因此通过研究我们可以发现,目前火山平台(飞扬15正式版)还无法做到在源码中看到是不同包名安装时就一定是不同包名,因为编译时是需要翻译的,是仅取声母的,就会有这样的现象。虽然这种场景在大家编写代码的过程中可能性不算特别大,只要你写的包名有个性、有态度,应该就不太会有我们研究场景中的现象发生。但如果发生了,还真的挺让人困惑的说。

因此在这里也给火山官方提个小建议去优化这一块东西吧,我能想到的是不同的项目在编译的时候除了取声母之外还取一下一些随机字符放在包名里面吧,这样应该能解决。或者取全拼应该也可以不过会太长了这个包名。或者官方还能想到其他更好的办法我觉得也可以。

兴许大家未来在看到这篇文章的时候已经发现这个问题已经修复了呢?



最后附上咱们的源码下载地址:


链接:https://pan.baidu.com/s/1jmK456l8ewn32-aXyM4nNg
提取码:f374


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
结帖率:50% (1/2)
发表于 2022-11-7 21:49:03 | 显示全部楼层   山西省晋中市

回帖奖励 +1 枚 精币

修复了吗
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)

签到天数: 11 天

发表于 2021-2-12 00:59:42 | 显示全部楼层   江苏省苏州市

回帖奖励 +1 枚 精币

感谢发布原创作品,精易因你更精彩!
回复 支持 反对

使用道具 举报

发表于 2020-2-27 09:38:13 | 显示全部楼层   **

回帖奖励 +1 枚 精币

不同中文包名编译后可能成为同一包名,记下了
回复 支持 反对

使用道具 举报

发表于 2020-2-25 17:47:46 | 显示全部楼层   安徽省亳州市

回帖奖励 +1 枚 精币

支持支持支持支持
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

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