LatinIME/build.gradle
Yohei Yukawa c884b6631f Let Android Studio use 'shared' cert to build APK
make build uses 'shared' cert in build/make/target/product/security/.
If LatinIME APK built with AndroidStudio doesn't use the same signing
cert, then you cannot install the APK into AOSP image, which is not
convenient.

With this CL, AndroidStudio build also uses the same signing cert.

Note that shared.keystore was built as follows.

 $ openssl pkcs8 -inform DER -nocrypt                      \
   -in build/make/target/product/security/shared.pk8       \
   -out shared.pem
 $ openssl pkcs12 -export                                  \
   -in build/make/target/product/security/shared.x509.pem  \
   -inkey shared.pem -out shared.p12                       \
   -password pass:android -name AndroidDebugKey
 $ keytool -importkeystore -deststorepass android          \
   -destkeystore shared.keystore -srckeystore shared.p12   \
   -srcstoretype PKCS12 -srcstorepass android

Fix: 110741422
Test: made sure that the APK built with Android Studio can be
      installed to an AOSP build
Change-Id: I471a87e190b15ff02bb06849e4660ed7898897a5
2018-07-25 18:08:35 -07:00

110 lines
2.8 KiB
Groovy

buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.0-beta03'
}
}
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
buildToolsVersion '28.0.0'
// Required if using classes in android.test.runner
useLibrary 'android.test.runner'
// Required if using classes in android.test.base
useLibrary 'android.test.base'
// Required if using classes in android.test.mock
useLibrary 'android.test.mock'
defaultConfig {
minSdkVersion 18
targetSdkVersion 23
versionName "1.0"
applicationId 'com.android.inputmethod.latin'
testApplicationId 'com.android.inputmethod.latin.tests'
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = false
signingConfig signingConfigs.debug
}
signingConfigs {
debug {
storeFile file("java/shared.keystore")
}
}
buildTypes {
debug {
minifyEnabled false
}
release {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard.flags'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
flavorDimensions "default"
sourceSets {
main {
res.srcDirs = ['java/res']
java.srcDirs = ['common/src', 'java/src']
manifest.srcFile 'java/AndroidManifest.xml'
}
androidTest {
res.srcDirs = ['tests/res']
java.srcDirs = ['tests/src']
manifest.srcFile "tests/AndroidManifest.xml"
}
}
lintOptions {
checkReleaseBuilds false
}
aaptOptions {
noCompress 'dict'
}
externalNativeBuild {
ndkBuild {
path 'native/jni/Android.mk'
}
}
}
repositories {
maven { url "../../../prebuilts/fullsdk-darwin/extras/android/m2repository" }
maven { url "../../../prebuilts/fullsdk-linux/extras/android/m2repository" }
mavenCentral()
google()
jcenter()
}
dependencies {
implementation 'androidx.legacy:legacy-support-v4:+'
implementation 'com.google.code.findbugs:jsr305:3.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation "org.mockito:mockito-core:1.9.5"
androidTestImplementation 'com.google.dexmaker:dexmaker:1.2'
androidTestImplementation 'com.google.dexmaker:dexmaker-mockito:1.2'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test:rules:1.0.2'
androidTestImplementation 'com.android.support.test.uiautomator:uiautomator-v18:2.1.3'
androidTestImplementation "com.android.support:support-annotations:27.1.1"
}