‘壹’ android studio 怎么使用aar
因为项目里面要用到actionbarsherlock,所以研究了一下如何导入到android studio中。
arr(Android Archive):名字是谷歌到的,至于中文叫什么我也不知道。不过好像依赖都要使用这样的包了。
首先说明我使用的android studio 版本是3.1.因为现在android studio的bug还不较多,所以你的版本能不能正常使用我就不敢说了。
如果你只是单纯的想使用actionbarsherlock的话,引用是十分简单的
dependencies {
// compile fileTree(dir: 'libs', include: '*.aar')
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile 'com.android.support:support-v4:18.0.+'
}
然后重新编译一下项目就行了。(ps
这两天看见群里面都在讨论引用第三方jar包,请看我的第一行注释,你只要新建一个libs的文件夹,然后把想要jar包复制到文件夹下,接着把注释那句复制到build文件中,修改一下(*.aar
-> *.jar)就可以了)
但是我们要是使用本地的aar文件,我谷歌了两天总算是勉强能用了,请看我的实现过程,如果你有更好的请转告小弟共同进步
第一步 :生成aar文件
我的方法是通过maven-android-plugin来生成的,如果你使用过actionbarsherlock以前的版本的话,这个工具应该不陌生,如果你连maven
都不知道的话,建议好好学习一下maven,虽然现在gradle很火 ,但是我还是最喜欢maven。
关于具体生成步骤不久不详细说了,文章最后贴出几个网址供大家学习使用,放心我按顺序给你们,只要一步一步的来绝对能成功
1 把你的maven版本提升到3.1.1
2 去github上clone下来 maven-android-sdk-deployer
这个项目https://github.com/mosabua/maven-android-sdk-deployer,按照使用说明安装android的版本
3 通过maven-android-plugin生成一个android项目
mvn archetype:generate \
-DarchetypeArtifactId=android-quickstart \
-DarchetypeGroupId=de.akquinet.android.archetypes \
-DarchetypeVersion=1.0.11 \
-DgroupId=your.company \
-DartifactId=my-android-application
4 修改pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.lee.study.android</groupId>
<artifactId>NiMa</artifactId>
<packaging>aar</packaging>
<name>NiMa</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<platform.version> 4.1.1.4
</platform.version>
<android.plugin.version>3.8.0</android.plugin.version>
</properties>
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<version>${platform.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>${android.plugin.version}</version>
<extensions>true</extensions>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<configuration>
<sdk>
<platform>16</platform>
<path>E:\android_work\sdk\</path>
</sdk>
</configuration>
</plugin>
</plugins>
</build>
</project>
这是我的pom,打包类型改成aar,插件改成3.8版本,添加ANDROID_HOME到path。
‘贰’ Android Studio如何使用aar依赖包
ps:2013-12-25 号更新,升级到0.4以后 这种方法已经完美使用!
因为项目里面要用到actionbarsherlock,所以研究了一下如何导入到android studio中。
arr(Android Archive):名字是谷歌到的,至于中文叫什么我也不知道。不过好像依赖都要使用这样的包了。
首先说明我使用的android studio 版本是3.1.因为现在android studio的bug还不较多,所以你的版本能不能正常使用我就不敢说了。
如果你只是单纯的想使用actionbarsherlock的话,引用是十分简单的
复制代码
代码如下:
dependencies {
// compile fileTree(dir: 'libs', include: '*.aar')
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile 'com.android.support:support-v4:18.0.+'
}
然后重新编译一下项目就行了。(ps 这两天看见群里面都在讨论引用第三方jar包,请看我的第一行注释,你只要新建一个libs的文件夹,然后把想要jar包复制到文件夹下,接着把注释那句复制到build文件中,修改一下(*.aar -> *.jar)就可以了)
但是我们要是使用本地的aar文件,我谷歌了两天总算是勉强能用了,请看我的实现过程,如果你有更好的请转告小弟共同进步
第一步 :生成aar文件
我的方法是通过maven-android-plugin来生成的,如果你使用过actionbarsherlock以前的版本的话,这个工具应该不陌生,如果你连maven 都不知道的话,建议好好学习一下maven,虽然现在gradle很火 ,但是我还是最喜欢maven。
关于具体生成步骤不久不详细说了,文章最后贴出几个网址供大家学习使用,放心我按顺序给你们,只要一步一步的来绝对能成功
1、把你的maven版本提升到3.1.1
2、去github上clone下来 maven-android-sdk-deployer 这个项目https://github.com/mosabua/maven-android-sdk-deployer,按照使用说明安装android的版本
3、通过maven-android-plugin生成一个android项目
复制代码
代码如下:
mvn archetype:generate /
-DarchetypeArtifactId=android-quickstart /
-DarchetypeGroupId=de.akquinet.android.archetypes /
-DarchetypeVersion=1.0.11 /
-DgroupId=your.company /
-DartifactId=my-android-application
4 修改pom
复制代码
代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.lee.study.android</groupId>
<artifactId>NiMa</artifactId>
<packaging>aar</packaging>
<name>NiMa</name></p><p> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<platform.version> 4.1.1.4
</platform.version>
<android.plugin.version>3.8.0</android.plugin.version>
</properties>
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<version>${platform.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>${android.plugin.version}</version>
<extensions>true</extensions>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<configuration>
<sdk>
<platform>16</platform>
<path>E:/android_work/sdk/</path>
</sdk>
</configuration>
</plugin>
</plugins>
</build>
</project>
这是我的pom,打包类型改成aar,插件改成3.8版本,添加ANDROID_HOME到path。
5 执行 mvn install ,这样我们就得到了aar文件,和aar-class.jar文件,其实aar文件里面包含class.jar文件,但是我目前的版本必须手动导入到android studio中,这就是不完美之处。
第二步 导入到android studio中 创建libs文件夹,放入想要导入的文件
1 修改build.gradle ,依然是给出我的大家可以按照自己的项目对比修改
复制代码
代码如下:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
apply plugin: 'android'</p><p>repositories {
mavenLocal()
mavenCentral()
flatDir {
dirs 'libs'
}
}
android {
compileSdkVersion 18
buildToolsVersion "18.1.1"</p><p> defaultConfig {
minSdkVersion 7
targetSdkVersion 18
}
}
dependencies {
// compile fileTree(dir: 'libs', include: '*.aar')
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile 'com.jayway.maven.plugins.android.generation2.samples.libraryprojects:aar-lib1:1.0.0@aar'
//compile 'com.lee.study.android:NiMa:0.0.1@aar'
compile 'com.android.support:support-v4:18.0.+'
}
android {
compileOptions.encoding = "UTF-8"
}
repositories 添加了 flatDir , dependencies 里面添加了 依赖的aar文件。
如果你做到这一步,重新编译一下依赖就添加好了,我目前的版本添加完了aar访问aar中的资源文件是不成问题的,但是不能访问到aar中的类文件。如果你和我一样不幸的话,请看下一步
2 手动的添加class.jar文件到android -studio,选中项目F4 ,手动添加依赖 jar到项目,看图片
如果这一步你也搞定了,恭喜你就能和我一样使用依赖了
Toast 显示的内容是依赖包中的一个静态方法返回的文本内容。
最后关于maven 如果搭建android项目的网址,按顺序看就可以
https://code.google.com/p/maven-android-plugin/
http://stand.spree.de/wiki_details_maven_archetypes
http://javacan.tistory.com/198
‘叁’ android studio怎么添加sdk依赖
第一步 :生成aar文件 我的方法是通过maven-android-plugin来生成的,如果你使用过actionbarsherlock以前的版本的话,这个工具应该不陌生,如果你连maven 都不知道的话,建议好好学习一下maven,虽然现在gradle很火 ,但是我还是最喜欢maven。 关于具体生成步骤不久不详细说了,文章最后贴出几个网址供大家学习使用,放心我按顺序给你们,只要一步一步的来绝对能成功 1 把你的maven版本提升到3pany \ -DartifactId=my-android-application 如果不能够编译我们可能要修改一下pom <?xml version="1.0" encoding="UTF-8"?> <modelVersion>4.0.0</modelVersion> <groupId>com.lee.study.android</groupId> <artifactId>NiMa</artifactId> <version>0.0.1</version> <packaging>aar</packaging> <name>NiMa</name> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <platform.version> 4.1.1.4 </platform.version> <android.plugin.version>3.8.0</android.plugin.version> </properties> <dependencies> <dependency> <groupId>com.google.android</groupId> <artifactId>android</artifactId> <version>${platform.version}</version> <scope>provided</scope> </dependency> </dependencies> <build> <finalName>${project.artifactId}</finalName> <pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <version>${android.plugin.version}</version> <extensions>true</extensions> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <configuration> <sdk> <platform>16</platform> <path>E:\android_work\sdk\</path> </sdk> </configuration> </plugin> </plugins> </build> </project> 上面都是我的pom,修改了打包类型和插件版本以及添加了sdk位置。 然后执行打包命令,就可以生成aar文件了,如果你是已经有写好的类库的话,可以尝试这修改成maven形式的。 第二步 导入到android studio中 创建libs文件夹,放入想要导入的文件 1 修改build.gradle ,依然是给出我的大家可以按照自己的项目对比修改 buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.6.+' } } apply plugin: 'android' repositories { mavenLocal() mavenCentral() flatDir { dirs 'libs' } } android { compileSdkVersion 18 buildToolsVersion "18.1.1" defaultConfig { minSdkVersion 7 targetSdkVersion 18 } } dependencies { // compile fileTree(dir: 'libs', include: '*.aar') compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar' compile 'com.jayway.maven.plugins.android.generation2.samples.libraryprojects:aar-lib1:1.0.0@aar' //compile 'com.lee.study.android:NiMa:0.0.1@aar' compile 'com.android.support:support-v4:18.0.+' } android { compileOptions.encoding = "UTF-8" }
‘肆’ 如何在android studio中更新maven依赖
方法一:
找到项目的maven配置文件pom.xml。
在pom.xml上点击右键->Maven->Reimport就可以刷新maven依赖。
方法二:
点击android studio主界面右边的“maven projects”菜单。
在打开的界面中,点击刷新的图标,就可以刷新依赖
‘伍’ android studio 新建项目后总卡在Download gradle-3.1.2.pom 如何解决
貌似是你导入项目的时候不能导入?看日志上面说的是你少了一个xxxgradle-1.6的包。studio 面世不久还处于一个测试版本建议还是不要使用这个开发。会出现各种错的有时候。如果你是喜欢他的那种风格那就用IDEa吧
‘陆’ 如何在Android Studio中使用Maven
方法一:
找到项目的maven配置文件pom.xml。
在pom.xml上点击右键->Maven->Reimport就可以刷新maven依赖。
方法二:
点击android studio主界面右边的“maven projects”菜单。
在打开的界面中,点击刷新的图标,就可以刷新依赖。
‘柒’ AndroidStudio一直下载.pom文件
关于Maven启动项目时总是下载POM的问题
问题描述
本地资源库中已经有相关jar包,而Maven项目也再报错,但是在启动项目时tomcat:run,总是要联网下载POM文档,否则将会报下载失败的错误。查看资源库发现POM文件也存在,但是还是会去请求下载POM文档。
解决办法
找到POM所在文件夹,查看_maven.repositories或_remote.repositories文件
修改上面找到的文件jar名>资源库=,需要把这里的资源库修改为你本地的有的,这个就应该是用来判断POM文档本地资源库是否已经存在的关键,资源库名对不上时,就代表本地资源库中没有POM文档
修改完POM文档后,不会立即生效,需要进入ECLIPSE的Maven Repositories视图,找到本地资源库Rebuild Index重新创建一下索引,这时问题就解决了。
注意
第二步中提示到的资源库名称,用的是settings.xml的mirror的id属性。
‘捌’ android maven plugin有什么作用
Android Maven Plugin——这个是Maven的插件,目的是能在使用mvn package时让maven构建出一个能在Android上使用的目标文件。
工具的介绍完毕,下面看看如何将Maven整合进一个Android工程:
首先看看对于已经存在的Android工程:
安装好如上的插件,在Android的工程上点右键,弹出菜单Configure->Convert to Maven project
配置好项目信息后会生成pom.xml以及工程上的图标已经多出一个小M字
更改project的packaging类型为apk
[html]viewplain
<projectxmlns="
xsi:schemaLocation="
<modelVersion>4.0.0</modelVersion>
<groupId>org.cst.ming.android.sample</groupId>
<artifactId>sample</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>apk</packaging>
......
在pom内声明一个build的插件,在maven构建项目的时候就会在target内生成一个apk的文件
[html]viewplain
注意,这里指定了插件的版本,这个是maven官方提供的建议,需要在构建插件中指定插件版本;还有一点就是必须指定sdk.platform及sdk.path属性,不然会因为找不到sdk而无法build的
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.0.0</version>
<inherited>true</inherited>
<extensions>true</extensions>
<configuration>
<sdk>
<platform>7</platform>
<path>${env.ANDROID_SDK_HOME}</path>
</sdk>
<deleteConflictingFiles>true</deleteConflictingFiles>
<undeployBeforeDeploy>true</undeployBeforeDeploy>
</configuration>
</plugin>
这时候可以在pom.xml内添加各种的依赖,并且执行mvn clean package即可构建出一个apk文件在target
此时已经整合完毕,可以在IDE内通过ADT来启动项目,亦可以通过在pom.xml内配置android-maven-plugin通过mvn android:deploy将项目部署到指定的设备(虚拟机)上,详情可以查阅android-maven-plugin的官方文档
对于新建项目的:
在新建项目的时候可以采用archetype(项目原型)的方式构建,在向导内选择项目原型,分别有
de.akquinet.android.archetypes:android-quickstart:1.0.6——用于快速构建一个android-maven项目
de.akquinet.android.archetypes:android-with-test:1.0.6——用于构建一个带有测试的android-maven项目
de.akquinet.android.archetypes:android-release:1.0.6——用于构建一个可以发布的android-maven项目,其中包含了一个纯maven的父项目及两个子android-maven项目
在项目创建之后,还有点需要修改的,由于android-maven-plugin原名为maven-android-plugin,因为某种关系在某个版本之后更名为android-maven-plugin,但在这个原型内还是使用旧的maven-android-plugin,所以需要使用新插件的必须手动修改plugin.artifactId及其plugin.version