mirror of
https://github.com/Genymobile/scrcpy.git
synced 2025-08-03 14:49:29 +00:00
Sign APK with credentials from keystore.properties
This commit is contained in:
parent
f34075ff52
commit
b5b431fa32
5 changed files with 34 additions and 1 deletions
1
server/.gitignore
vendored
1
server/.gitignore
vendored
|
@ -6,3 +6,4 @@
|
||||||
/build
|
/build
|
||||||
/captures
|
/captures
|
||||||
.externalNativeBuild
|
.externalNativeBuild
|
||||||
|
/keystore.properties
|
||||||
|
|
12
server/HOWTO_keystore.txt
Normal file
12
server/HOWTO_keystore.txt
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
For an APK to be installable, it must be signed: <https://developer.android.com/training/articles/keystore>
|
||||||
|
|
||||||
|
For that purpose, create a keystore by executing this command:
|
||||||
|
|
||||||
|
keytool -genkey -v -keystore ~/.android/scrcpy.keystore -keyalg RSA -keysize 2048 -validity 10000 -alias scrcpy -dname cn=scrcpy
|
||||||
|
|
||||||
|
(Adapt ~/.android/scrcpy.keystore if you want to generate it to another location.)
|
||||||
|
|
||||||
|
Then create server/keystore.properties and edit its properties:
|
||||||
|
|
||||||
|
cp keystore.properties.sample keystore.properties
|
||||||
|
vim keystore.properties # fill the properties
|
|
@ -10,10 +10,26 @@ android {
|
||||||
versionName "1.24"
|
versionName "1.24"
|
||||||
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
|
||||||
}
|
}
|
||||||
|
signingConfigs {
|
||||||
|
release {
|
||||||
|
// to be defined in server/keystore.properties (see server/HOWTO_keystore.txt)
|
||||||
|
def keystorePropsFile = rootProject.file("server/keystore.properties")
|
||||||
|
if (keystorePropsFile.exists()) {
|
||||||
|
def props = new Properties()
|
||||||
|
props.load(new FileInputStream(keystorePropsFile))
|
||||||
|
|
||||||
|
storeFile rootProject.file(props['storeFile'])
|
||||||
|
storePassword props['storePassword']
|
||||||
|
keyAlias props['keyAlias']
|
||||||
|
keyPassword props['keyPassword']
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
minifyEnabled false
|
minifyEnabled false
|
||||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||||
|
signingConfig signingConfigs.release
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
4
server/keystore.properties.sample
Normal file
4
server/keystore.properties.sample
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
storeFile=/path/to/your/keystore
|
||||||
|
storePassword=PASSWORD
|
||||||
|
keyAlias=scrcpy
|
||||||
|
keyPassword=PASSWORD
|
|
@ -25,5 +25,5 @@ then
|
||||||
cp "$PROJECT_ROOT/build/outputs/apk/debug/server-debug.apk" "$OUTPUT"
|
cp "$PROJECT_ROOT/build/outputs/apk/debug/server-debug.apk" "$OUTPUT"
|
||||||
else
|
else
|
||||||
"$GRADLE" -p "$PROJECT_ROOT" assembleRelease
|
"$GRADLE" -p "$PROJECT_ROOT" assembleRelease
|
||||||
cp "$PROJECT_ROOT/build/outputs/apk/release/server-release-unsigned.apk" "$OUTPUT"
|
cp "$PROJECT_ROOT/build/outputs/apk/release/server-release.apk" "$OUTPUT"
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue