tags:耳朵_android
引用
首先創(chuàng)建新項(xiàng)目液斜,并進(jìn)行Kotlin的配置,目前最新的版本號(hào)為1.0.3:
然后添加項(xiàng)目的build.gradle中添加jitpack姻成,再到app的build.gradle中引用HMLibrary撑蚌,目前穩(wěn)定的版本號(hào)為v0.0.6m:
maven { url "https://jitpack.io" }
...
compile 'com.github.bxcx:HMLibrary:v0.0.6m'
Ear build.gradle:
buildscript {
ext.kotlin_version = '1.0.3'
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.3'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
allprojects {
repositories {
maven { url "https://jitpack.io" }
mavenCentral()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
app build.gradle
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 24
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "ear.life"
minSdkVersion 16
targetSdkVersion 24
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
sourceSets {
main.java.srcDirs //這里可以直接去掉kotlin目錄,不需要?jiǎng)?chuàng)建它
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.2.0'
compile 'com.github.bxcx:HMLibrary:v0.0.6m'
}
OK挠说,同步一下Gradle沒有異常的話我們就算配置成功了吵冒,沒有成功的同學(xué)看看是不是需要翻墻纯命,或者在下面提個(gè)問。
配置
-
Application
創(chuàng)建一個(gè)Application痹栖,繼承自HMApp亿汞,這一步是很有必要的,我們可以看看HMApp中的源碼揪阿,如果沒有的同學(xué)可以到https://github.com/bxcx/HMLibrary去下載:open class HMApp : Application() { override fun onCreate() { super.onCreate() //初始化通用緩存 Cacher.init(this) //初始化圖片加載 val config = ImageLoaderConfiguration.Builder(this).threadPriority(Thread.NORM_PRIORITY - 2).denyCacheImageMultipleSizesInMemory().discCacheSize(50 * 1024 * 1024) //.diskCache(UnlimitedDiskCache(File(PathUtil.PHOTOCACHEPIC))).discCacheFileNameGenerator(Md5FileNameGenerator()) .writeDebugLogs().tasksProcessingOrder(QueueProcessingType.LIFO).build() ImageLoader.getInstance().init(config) //初始化日志輸出 Logger.init(packageName) // default PRETTYLOGGER or use just init() .setMethodCount(2) // default 2 .hideThreadInfo() // default shown .setLogLevel(LogLevel.FULL) // default LogLevel.FULL .setMethodOffset(0) // default 0 //設(shè)置網(wǎng)絡(luò)請(qǐng)求超時(shí)時(shí)限 OkHttpUtils.getInstance().setConnectTimeout(2000, TimeUnit.SECONDS) } }
可以看到目前Library使用的是OkHttp進(jìn)行網(wǎng)絡(luò)請(qǐng)求疗我,ImageLoader做圖片加載咆畏,還有一些其它功能的初始化,如果實(shí)在不想繼承HMApp的話吴裤,可以將你需要用到的代碼Copy至你自己的創(chuàng)建一個(gè)Application中即可旧找。
這里我們先創(chuàng)建一個(gè)Application,并修改網(wǎng)絡(luò)請(qǐng)求的默認(rèn)方式為Post嚼摩,不明白的同學(xué)自行移步[HMRequest.md][2]:
class App : HMApp() {
override fun onCreate() {
super.onCreate()
HMRequest.method = Method.POST
}
}
> 不要忘記去AndroidManifest中修改application的name。
最后矿瘦,再次編譯一下確認(rèn)沒有異常枕面,我們就可以上傳一下備份了.
github: https://github.com/bxcx/ear
本節(jié)分支: https://github.com/bxcx/ear/tree/init