1. 程式人生 > >Android項目實戰(三十八):2017最新 將AndroidLibrary提交到JCenter倉庫(圖文教程)

Android項目實戰(三十八):2017最新 將AndroidLibrary提交到JCenter倉庫(圖文教程)

success hub rdf fault 用戶 builds style config ocl

我們經常使用github上的開源項目,使用步驟也很簡單

比如:

compile acffo.xqx.xwaveviewlib:maven:1.0.0

這裏就學習一下如何將自己的類庫做出這種可以供他人使用的開源項目。

一、Android studio項目準備

技術分享

  這時候我們想寫了一個自定義控件,想要傳到github上讓別人使用。

  1、先在該項目下創建一個Module

  技術分享

  2、選擇Android Library

  技術分享

  3、填寫類庫名稱

  技術分享

  4、此時的目錄結構

  技術分享

  註意,開源出去的是library類庫,所以需要在類庫中寫自定義控件或者其他代碼,而不是在app目錄下

  5、創建一個自定義控件View

  技術分享

  

  6、在app目錄下 寫使用該類庫的相關示例代碼 ,讓app依賴該類庫

  技術分享

  

  二、Bintray準備

  1、首先創建一個Bintray賬號,註冊地址 https://bintray.com/signup/oss 註意這是個人賬號註冊,很多文章給的鏈接是公司賬號註冊。

    有個註意點:郵箱不能是163的 也許還有別的也不能使用,建議使用谷歌的gmail郵箱。

  

  2、創建找好成功之後,選擇創建組織

  技術分享

  可以看到已經創建好的組織

  技術分享

  3、選擇進入一個,比如我進入xqxlibrary組織 ,然後界面如下,再繼續點擊創建倉庫

  技術分享

  

  4、創建倉庫界面如下

  技術分享

  創建完成之後可以看到xqxlibrary組織下多了一個倉庫

  技術分享

  5、最後我們要記錄一下自己的Bintray用戶名 和 API Key 值,Android studio配置的時候需要

   技術分享

    技術分享

    復制API Key

 三、Android Studio 項目 配置

  1、根目錄下的build.gradle 配置

  在 dependencies{} 中添加

        classpath com.novoda:bintray-release:0.3.4

  在allprojects中添加:

  tasks.withType(Javadoc) {
        options.addStringOption(
Xdoclint:none, -quiet) options.addStringOption(encoding, UTF-8) }

最終如下:

buildscript {
repositories {
jcenter()
}
dependencies {
classpath ‘com.android.tools.build:gradle:2.2.2‘
classpath ‘com.novoda:bintray-release:0.3.4‘
}
}

allprojects {
repositories {
jcenter()
}
tasks.withType(Javadoc) {
options.addStringOption(‘Xdoclint:none‘, ‘-quiet‘)
options.addStringOption(‘encoding‘, ‘UTF-8‘)
}
}

  2、module目錄下的build.gradle 配置

  (1)、最頂端添加代碼

apply plugin: maven
apply plugin: com.novoda.bintray-release

  (2)、Bintray配置資料區

//添加
publish {
    userOrg = xqxlibrary        // 組織名
    groupId = acffo.xqx.mycustomview  //類庫的包名
    artifactId = maven       // 工程名 ,自定義                 
    publishVersion = 1.0.0         //版本號
    desc = 波浪流動效果 //描述 
    website = https://github.com/BestCoderXQX/XWaveView //github地址  你可以把你的項目push到你的github上 , 項目的地址即這個地址
}

  全部代碼:

技術分享
apply plugin: ‘com.android.library‘
apply plugin:  ‘maven‘
apply plugin: ‘com.novoda.bintray-release‘

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.3"

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘
        }
    }
}

dependencies {
    compile fileTree(dir: ‘libs‘, include: [‘*.jar‘])
    androidTestCompile(‘com.android.support.test.espresso:espresso-core:2.2.2‘, {
        exclude group: ‘com.android.support‘, module: ‘support-annotations‘
    })
    compile ‘com.android.support:appcompat-v7:25.3.1‘
    testCompile ‘junit:junit:4.12‘
}
//添加
publish {
    userOrg = ‘xqxlibrary‘
    groupId = ‘acffo.xqx.xwaveviewlib‘
    artifactId = ‘maven‘
    publishVersion = ‘1.0.0‘
    desc = ‘波浪流動效果‘
    website = ‘https://github.com/BestCoderXQX/XWaveView‘
}
View Code

  四、執行Gradlew命令語句

gradlew clean build bintrayUpload -PbintrayUser=a463674420 -PbintrayKey=6f5e4e11d2d253a2d4************** -PdryRun=false

  解釋如下:

gradlew clean build bintrayUpload 
-PbintrayUser=a463674420 (這裏是網站頭像旁邊對應的帳號,有可能跟網址上面的不一樣,一定要區分好)
-PbintrayKey=6f5e4e11d2d253a2d4************** (這個是上面讓大家復制保存下來的API key-PdryRun=false(如果是false那麽就會真實提交,如果是true不會去進行真實提交,但是會編譯,可以去查看是否編譯通過在提交)

  執行到SUCCESSFUL 即表示成功了。

技術分享

    

  五、提交審核

  找到建的組織下的倉庫 , 會發現 多了一個package

  技術分享

   點擊進入 ,點擊右側的"Add to JCenter"即可提交審核 ,用的時候點擊左下側的‘Gradle‘即可

   技術分享

  

Android項目實戰(三十八):2017最新 將AndroidLibrary提交到JCenter倉庫(圖文教程)