Rev*_*opi 6 android android-build apk google-play android-studio
我找到了两种可能的方法来生成发布APK
在模块build.gradle文件中定义Product Flavors和Signing Config,然后单击Run按钮(betaRelease Config)
android {
signingConfigs {
my_alias {
keyAlias 'my_alias'
keyPassword '*******'
storeFile file('*******')
storePassword '******'
}
}
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
minSdkVersion 16
targetSdkVersion 22
versionCode 9
versionName "0.2"
resConfigs "en","hi","te"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.my_alias
}
debug {
minifyEnabled false
}
}
productFlavors {
alpha {
applicationId = "***************"
resValue 'string', 'app_name', '**********'
resValue 'string', 'instabug_app_id','*******************'
manifestPlaceholders = [onesignal_app_id : "*******************",
onesignal_google_project_number: "************"]
}
beta {
applicationId = "***************"
resValue 'string', 'app_name', '**********'
resValue 'string', 'instabug_app_id','*******************'
manifestPlaceholders = [onesignal_app_id : "*******************",
onesignal_google_project_number: "************"]
}
}
aaptOptions {
additionalParameters "--no-version-vectors"
}
}
Run Code Online (Sandbox Code Playgroud)使用Android Studio中"生成"菜单中的"生成签名的APK"选项
第一个APK有14.5MB,第二个给出22.5MB,这有很大的不同.使用APK分析器我可以看到第二个是复制res文件夹中的drawables,如下所示.较小的发行版APK(14.5MB一个)在所有类型的设备上运行良好.
为什么我需要更大的?我可以将普通版APK上传到Play商店吗?
是否有任何配置可以避免重复的drawables?
小智 3
我将根据我的观察尝试回答这个问题。
为什么我需要更大的?我可以将正常发布的 APK 上传到 Play 商店吗?
当您通过单击“运行”按钮发布 apk 时,您的目标是特定设备(模拟器或 USB 设备),并且您仅为该目标生成资源。这就是您的 .apk 文件较小的原因。
如果您想部署并定位到所有密度的设备,您应该使用“生成签名 APK”选项为所有设备提供资源(例如图像)。
较小的版本 APK(14.5MB)在所有类型的设备上运行良好。
我认为是因为图像被缩放以适合屏幕。但这样就会损失图像质量。
是否有任何配置可以避免重复的绘图?
在提供资源指令中写道:
您的应用程序的布局方向。ldrtl 的意思是“布局方向-从右到左”。ldltr 表示“布局方向从左到右”,是默认的隐式值。
所有这些意味着您没有重复的可绘制对象,但现在它们位于正确的目录中。
归档时间: |
|
查看次数: |
1229 次 |
最近记录: |