-
今天同学向探讨一个问题,如何在android手机上拷贝工程不覆盖原工程的配置方法,例如A工程,我拷贝A工程的代码,在A工程的基础上我开发B工程,这个时候因为包名或者其中一些配置的原因,让A和B工程不能同时运行在
虚拟机
或者真机上,为了使共A。B工程同是友好的运行在手机上,请使用如下:
-
同学公司开发一套android管理系统,客户端分为超级用户和普通用户(真搞不明白为什么不做用户角色权限控制,帮两个客户端做成一个客户端);他是基于普通客户端开发,开发后直接在普通客户端的代码上再次开发超级客户端。后来发现每次安装超级客户端会覆盖掉之前的普通客户端。他想了很多,例如换在AndroidManifest.xml里面设置配置~~~~始终找不到解决的办法。
小弟对android手机的安装机制也不是很了解,也是一边凭着感觉,一边测试,终于揣摩出了一套方法。
其实android的安装个人觉得在启动activity的那个包上。改变那个包名,再在AndroidManifest.xml里面改变相应的配置,应该就可以了。下面看小弟的方法。
首先新建一个工程,并且拷贝这个工程:
2.com.wanli.test是最初的包名,我将拷贝的包名改为com.wanli.test.test
3.我们这里不急着去修改gen的包名,有一招可以让gen自动修改它的包名
4.点击AndroidMainfest,这里有5个标签。如下:我们选择第一个Mainfest
5.展开package的下拉框,你会惊讶的发现里面有一个com.wanli.test.test的包名,你点击com.wanli.test.test,保存,你会更惊讶的发现,gen的包名自己诡异的变成了com.wanli.test.test。嗯。离成功只差一步了,点击AndroidMainfest的第五个标签AndroidMainfest,修改下 android:name=".MyTestOneActivity",因为改变包名的时候它也改变了,也修改下启动activity代码import的包名。修改完毕,一切就ok了
6,分别运行两个同一版本程序:
同时运行了:呵呵就连名称都一样 !!!哈哈
注:此方法我已经验证,不过最后一步没有看太懂 只好一个Activity的修改有关R类的文件了,呵呵
摘自 wanli_smile的专栏