Android開發、測試持續集成環境Jenkins搭建

傳統java項目開發都會利用maven、ant在hudson、jenkins中持續集成,開發、測試、每日構建,保證代碼質量。maven默認不支持android,可是咱們能夠利用 maven-android-plugin插件來讓maven支持android。

環境

  • jdk 1.6及以上
  • Android sdk(r21及以上),最好是最高版本,最好也安裝一下ndk
  • Maven 3.0.3及以上,貌似3.1.0很差使,最好使用3.0.5版 設置ANDROID_HOME環境變量,將$ANDROID_HOME/tools、$ANDROID_HOME/platform-tools加入到環境變量中

測試環境

下載示例程序,經過跑這些程序,能夠檢測環境是否OK,而且下載maven須要的jar包。 示例程序

使用Maven進行Android開發

新建Maven Android項目

具體命令參考 此處

手動建立Maven Android項目

有些是歷史項目,也能夠手動將其改爲maven項目,方法以下:
  1. 新建pom.xml文件,拷貝其餘maven項目的也可。
  2. 修改<groupId>,<artifactId>,<name>
  3. 修改<version>,默認是<version>0.1.0-SNAPSHOT</version>
  4. 增長android jar包依賴:
    <dependency>
        <groupId>com.google.android</groupId>
        <artifactId>android</artifactId>
        <version>1.5_r4</version>
        <scope>provided</scope>
    </dependency>
    可在此處查看android全部版本 5. 在android-maven-plugin配置中,配置android platform的版本,如<platform>7</platform>6. 能夠刪除build.xml、build.properties、bin和libs。 7. 打apk包mvn clean install,將apk包安裝到設備中mvn android:deploy
示例pom.xml以下:
<?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>

       <parent>
          <groupId>com.yeetrack</groupId>
          <artifactId>parent</artifactId>
          <version>1.0-SNAPSHOT</version>
       </parent>

       <properties>     
           <project.build.sourceEncoding>utf-8</project.build.sourceEncoding>       
           <maven.compiler.encoding>utf-8</maven.compiler.encoding>
          <platform.version>4.1.1.4</platform.version>
          <android.plugin.version>3.6.0</android.plugin.version>
       </properties>

       <groupId>com.yeetrack</groupId>
       <artifactId>app</artifactId>
       <version>1.0-SNAPSHOT</version>
       <packaging>apk</packaging>
       <name>app</name>

       <dependencies>
          <dependency>
             <groupId>com.google.android</groupId>
             <artifactId>android</artifactId>
             <version>4.1.1.4</version>
             <scope>provided</scope>
          </dependency>

          <dependency>
               <groupId>com.google.android</groupId>
               <artifactId>support-v4</artifactId>
               <version>r7</version>
        </dependency>

     </dependencies>

<!-- 配置pmd、findbugs -->
<reporting>
<plugins>
  <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>findbugs-maven-plugin</artifactId>
    <version>2.5</version>
    <configuration>  
                <xmlOutput>true</xmlOutput>  
                <effort>Max</effort>  
            </configuration>  
  </plugin>
</plugins>
 
<build>
    <finalName>${project.artifactId}</finalName>
    <sourceDirectory>src</sourceDirectory>

    <plugins>
        <plugin>
                    <groupId>com.jayway.maven.plugins.android.generation2</groupId>
                    <artifactId>android-maven-plugin</artifactId>
                    <version>3.6.1</version>
                    <configuration>
                            <sdk><platform>16</platform></sdk>
                            <manifest>
                                <debuggable>true</debuggable>
                            </manifest>
                    </configuration>
                    <!--<executions>
                            <execution>
                                <goals>
                                        <goal>ndk-build</goal>
                                </goals>
                    <configuration>

                                        <attachNativeArtifacts>true</attachNativeArtifacts>
                                </configuration>
                            </execution>
                    </executions>-->
                    <extensions>true</extensions>
                </plugin>

        </plugins>
    </build>
 

使用Maven進行Android單元測試

繼續閱讀→

相關文章
相關標籤/搜索