永发信息网

如何开发一个隐藏源代码的library工程

答案:2  悬赏:10  手机版
解决时间 2021-03-05 17:19
如何开发一个隐藏源代码的library工程
最佳答案
Android Library Project(库工程)是一个可以被其他Android工程所引用的工程。那为什么需要使用这个工程呢,打个比方,我们在开发Android项目的时候,常常会遇到这样的问题,几个Android项目的开发过程中,会有可以重复利用的代码段或者资源。如果每个项目都要重复编写或者添加这些代码或者资源,将会非常的影响效率。为了避免重复发明轮子,我们可以将这些重复的资源添加到Android Library Project中。那么以后,我们要复用这些东西的时候,只要在当前项目中引用这个Android Library Project就可以了。当然我们的Android Lib Library不仅仅是给我们自己使用,如果我们要把这个Android Lib Project共享给别人,但是又不希望暴露自己的源代码,那么,这就是我们这篇文章要讲的内容。

  How
  首先,这篇文章中我们会提到三个项目。
  LibraryProject : 我们需要共享给别人的不包含源代码的工程。
  LibraryProjectSource : LibraryProject包含源代码的版本。
  AndroidProject : 引用LibraryProject的版本。
  和我们开发正常的Android项目一样,我们先建立一个项目,但是在开始正常的编码之前,我们需要先弄清楚原理和注意事项。不暴露源码的方式是将LibraryProjectSource中的源代码打包成JAR包,然后添加到我们要共享给他人的工程中。如果这个工程中没有引用到资源(res目录下的文件),那么就很容易实现了。但是如果有引用到资源(例如通过R.id.resource方式),我们就可以能会遇到资源引用错乱的问题。

  打个比方,在AndroidProject中如果引用TextView可以会定位到一个ImageView上。这是因为,如果在源代码中有使用R.id.resource引用资源,在编译成JAR包的时候,R.id.resource会用R.java文件中相应的十六进制的int值替换。但是在AndroidProject文件中资源的会结合LibraryProject中的资源重新生成一个新的十六进制int值。而同一个资源,在LibraryProjectSource中的这个int值和AndroidProject中的就可能不相同了。
全部回答
我。。知。。道 加。。我。。私。。聊
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
美豪百货商行地址有知道的么?有点事想过去
黄历忌动土是什么意思
人民币玩超级群英传应该玩什么武将
(2010)按照《建设工程安全生产管理条例》规定
猪干和西红柿有冲突吗
各个平方的进率是多少
苹果5刷机提示不支持保留基带,怎么办
晚上摆地摊卖什么最火
涿州市豆庄乡东何各庄村村民委员会地址有知道
关中,关内,关外,关东”是指哪些地方
外出打工必备知识?
手机用微信怎么上网聊天啊.
我是借款人,但是钱我没用到,让抵押人用了,我
求猪兔大战2
鑫琦指艺怎么去啊,有知道地址的么
推荐资讯
手机下载了自动接听软件。但是来了电话,接听
杏鲍菇的图片什么样
那一天他还没有准备好去死的英语怎么读(外语
公司每天上班都在十四五个小时每月只给四百元
永利水果店地址在什么地方,想过去办事
上门女婿结婚十年了女方想离婚,房子是婚后大
11个月的宝宝肚子胀气可以喝萝卜水吗
金宏明二手房怎么去啊,有知道地址的么
现在自学英语,社会上怎么去考级证书
代佳星这个名字好不好
用HTPC看蓝光电影和用蓝光播放机看蓝光电影哪
一周不吃菜只喝粥,会怎样???
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?