【990.am】AndroidStudio入门之导入Module,AndroidStudio入门之第三方引用

AndroidStudio是日前安卓开发中当之无愧的神器,不过众多初学的同桌对于和Eclipse完全区别等的AS是充满怨念的。于是小编开了此核心,一点一点带您走入AS神器之门。

一 、难点方案

  • 报错难题

Error:Execution failed for task ‘:app:mergeDebugResources’.
> Error: java.util.concurrent.ExecutionException:
com.android.ide.common.process.ProcessException:
Error:java.util.concurrent.ExecutionException:
com.android.ide.common.process.ProcessException:


A:那里恐怕是因为点9图片的标题,找到相应图片并开拓,勾上showbadpatch能够修改点9图纸难点


  • 报错难题

Gradle ‘AndroidUsbCamera-master’ project refresh failed
Error:Configuration with name ‘default’ not found.

如图:

990.am 1

Paste_Image.png

A:导致地点的题目可能是出于以下导致:
    a、settings.gradle包蕴了不得法的目录:include “:目录名”
    b、app目录下build.gradle文件目录不科学:compile
project(‘:目录名’)
    c、引入的第叁方库下是不是含有build.gradle文件

AndroidStudio是近来安卓开发中当之无愧的神器,可是众多初学的同班对于和Eclipse完全不相同等的AS是充满怨念的。于是作者开了此宗旨,一点一点带您走入AS神器之门,
此篇文章是该宗旨的第壹篇,假设还没有爱上一篇的同室建议您先去看AndroidStudio入门之导入第贰方。

  • 导入jar包,添加在线第①方依赖,导入.so文件
  • 【990.am】AndroidStudio入门之导入Module,AndroidStudio入门之第三方引用。导入Module/Library项目
  • Android Studio
    使用小技巧和快捷键
  • 插件(作弊器)
  • APK压缩,混淆

【990.am】AndroidStudio入门之导入Module,AndroidStudio入门之第三方引用。二、小贴士

  • <一> 导入外人的品种怎么转移Gradle版本跟自身的相匹配
      我们在导入别人的种类时,平常会卡在这一个界面,如下图所示:
![](https://upload-images.jianshu.io/upload_images/3161201-fab124c2a0f72814.png)

Paste\_Image.png



  这是由于在首次导入项目的时候AS默认是使用
gradle-wrapper-properties
中默认的设置,它会从网上下载所需要的对应版本的
gradle。这时我们只要把默认的加载修改为我们本地有的就ok了。即修改gradle-wrapper-properties
文件,同时修改build.gradle对应的dependencies中classpath路径,如图所示:

990.am 2

Paste_Image.png

990.am 3

Paste_Image.png

另一种办法正是下载对应的Gradle版本,并修改AS配置的Gradle路径使之相应。

  • <二> 如何在AS中导入android的framework.jar包
      从Eclipse
    转到【990.am】AndroidStudio入门之导入Module,AndroidStudio入门之第三方引用。Android
    Studio,必经
    的二个进程正是导入第③方jar包,导入普通的jar包情势比较不难,网上别的的例证也比较多,可是关于导入framework.jar包内容就相比较少。
    有时候开发供给部分信赖framework中躲藏方法的时候,大家能够导入framework.jar,
    编写翻译的时候依赖framework,
    打包的时候不打进去,那在eclipse中达成方式相比较简单,那里记录下Android
    studio中程导弹入framework.jar包的方法,别的系统jar包的导入方式同理。
    1,首先将framework.jar拷贝到花色的/libs文件夹中,然后右键framework.jar文件,然后Add
    as Library ,再选当前的module。

990.am 4

Paste_Image.png

  操作之后,在你的Module的build.gradle中会扩充了

990.am 5

Paste_Image.png

以此时候我们早已添加了framework.jar包,不过大家还有改变framework.jar的效益域属性,右键你的module,Open
Module Setting,然后将framework.jar的Scope改为 Provided 。如图所示:

990.am 6

Paste_Image.png

改了framework.jar的功能域后,Module的build.gradle也会有改变,在此以前的compile
files(‘libs/framework.jar’),会变成provided
files(‘libs/framework.jar’)。

2,改了framework.jar
的scope后,再在改动project的build.gradle文件,改成如下所示:

990.am 7

Paste_Image.png

那是在本来的功底上加了gradle.projects伊娃luted{}里面的始末,那里要证实下”Xbootclasspath/p”后接的路子,是相对于近来Project的根目录,例子中的”:app\libs\framework.jar”个中的app为Module名,libs正是放framework.jar的文件夹了。此时,Make
Project就OK了(报红也不曾提到)。
  假诺想调用jar包里面的办法恐怕不会自动唤醒,那一个时候修改一下module对应的*.iml文件,把framework.jar包的引用放到第一个,那时再调用方法就足以自行提醒了。

  • <三> 如何在AS中引用so文件
      AS中援引so库其实是相比简单的,只要求在Module相应的目录下制造相应的文件夹,命名为jniLibs,再把相应的so文件放进去就行了,如图所示:

990.am 8

QQ截图20170325190549.png

  至于为何那样放置,其实是有早晚依据的,原理如下:
  其实在AndroidStudio中,大家之所以能够把jar包放在对应模块的libs目录下,比如app模块(也正是平日意义下的主工程了)的libs目录中,而不须要再去安顿build.gradle文件,就足以健康使用这一个jar包,是因为在AndroidStudio中新建项目时,系统现已在暗中同意为大家布署好了gradle,占卜应模块下的build.gradle文件的话,一般会有诸如此类一句:

dependencies { compile fileTree(dir: ‘libs’, include:
[*.jar’])\}

事实上,那句正是报告gradle,大家的第2方jar包在libs目录下,假使没有这一行安插,那么理论上大家把jar包直接放在libs目录下实际是十二分的,只可是新建项目时系统现已为我们配好了。这里libs是个相对路径,因为大家的build.gradle文件本人就在app模块下,那么这里的libs当然也正是指app模块下的libs,其实build.gradle文件中兼有的不二法门都能够写绝对路径,大家上边讲的so包的途径也是只写相对路径就足以了。
  OK,言归正传,现在知晓jar包的引入原理了,那么so包为何要放在这么的3个索引下?能否放在任意二个自定义的目录呢?当然是能够的。
实质上在build.gradle中,暗中同意会有一些那样的布署:

   sourceSets { 
                main {
                         jniLibs.srcDirs = [**'src/main/jniLibs'**] 
                         aidl.srcDirs = [**'src/main/aidl'**]
                }
   }

那几个安顿在你新建筑工程程以往,在build.gradle文件中暗中认可是尚未的,因为暗许正是如此的,当然也就不写也足以,当然你写出来也没错。意思是so包就去src/main/jniLibs目录下找,aidl文件暗中同意就到src/main/aidl目录下找。当然还有为数不少别的的安顿,你还是可以配备你的AndroidManifest.xml文件在何地,还足以布置你的Java代码在什么地方,假使你不配的话都会有多个暗许值,那里只是以jniLibs和aidl为例而已。
  看到此间您应当就理解了,为啥把so包直接放到src目录下的main目录下的jinLibs目录就足以了,而不需求配备gradle文件了,因为系统暗许就会到那个目录下找,如若你想把so包放在一个您喜爱的地点,比如直接放在app目录下的myJniLibs目录下,那你只供给把地点内容改成:

   sourceSets { 
                main {
                       jniLibs.srcDirs = ['myJniLibs']
                       aidl.srcDirs = ['src/main/aidl']
                }
   }

这般就足以了。通晓了规律,仿佛一切都明知道,同理,假使不想把aidl文件放在默许目录下,也足以改aidl.srcDirs的值,假如不想把java代码放在暗许目录,就足以改java.srcDirs的值,借使不想把财富文件放在默许目录下,就足以改res.srcDirs的值。。。还有多少个,同学们慢慢去商讨吗,即便你想把目录结构改的跟eclipse下的工程一律,就改那里的值就能够了。

  • 导入jar包,添加在线第一方正视,导入.so文件
  • 导入Module/Library项目
  • Android Studio
    使用小技巧和火速键
  • 插件(作弊器)
  • APK压缩,混淆

AndroidStudio之导入第一方

mark

在类型支付进程中,必不可少的会需求导入各样library,在不容许或许网络状态不好无法透过抬高注重的艺术丰硕第贰方时,通晓导入module的技术就必需了,接下去我们就起来一步步学习。

导入Jar包

此间大家照样选取采纳PhotoView用作示范第一方,同学们方可前往Github搜寻你供给的第③方。打开PhotoView后可知下图:

在此处笔者提前创造好了多少个AS项目,使用的AS版本号是2.1.3

990.am 9

img1.png

Paste_Image.png

刚好成立好的档次如上海教室所示,左边是类别管理,左边是代码编辑窗口,在2.1.3的本子中,点击箭头图标采取Project

那时候大家不采用在线注重添加,点击

img2.png

990.am 10

咱俩挑选Project视图

Paste_Image.png

img3.png

后来,你就能够下载到该第二方的持有文件了

Project视图差不离是如此的,大家得以很直白地看见libs文件夹,接下去将你要导入的jar包拖入libs文件夹内,再按下图操作

990.am 11

img4.png

Paste_Image.png

相关文章