在我的应用程序中包含 64 位库,但是当我分析 apk 时它仍然是 32 位的
In my app included 64-bit libraries but when i analysis apk it's still 32 bit
apply plugin: 'com.android.application'
android {
compileSdk版本29
默认配置{
应用程序 ID "com.panache.fm"
minSdkVersion 16
targetSdk版本 29
版本代码 4
版本名称“1.3”
multiDexEnabled 真
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
manifestPlaceholders = [onesignal_app_id : "77d104e0-6665-4288-a324-b74296fe24d4",
// Project number pulled from dashboard, local value is ignored.
onesignal_google_project_number: "REMOTE"]
ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
buildTypes.each {
it.buildConfigField 'String', 'SERVER_URL', SERVER_URL
}
sourceSets {
main {
res.srcDirs = ['src/main/res', 'src/main/res/assets', 'src/main/assets', 'src/main/res/drawable-hdpi', 'src/main/res/drawable-mdpi', 'src/main/res/drawable-xhdpi', 'src/main/res/drawable-xxhdpi', 'src/main/res/values-sw600dp', 'src/main/res/values-sw720dp-land', 'src/main/res/values-v14', 'app/libs/armeabi', 'libs/armeabi', 'libs/armeabi-v7a', 'src/main/jniLibs', 'src/main/jniLibs/armeabi', 'src/main/jniLibs/armeabi-v7a', 'libs/mips', 'libs/x86']
}
}
}
依赖项{
实现文件树(目录:'libs',包括:['*.jar'])
android测试实现('com.android.support.test.espresso:espresso-core:2.2.2',{
排除组:'com.android.support',模块:'support-annotations'
})
//不检查GradleCompatible
实施 'com.android.support:appcompat-v7:28.0.0'
//不检查GradleCompatible
实施 'com.android.support:cardview-v7:28.0.0'
实施 'com.android.support.constraint:constraint-layout:1.1.3'
//不检查GradleCompatible
实施 'com.android.support:design:28.0.0'
//不检查GradleCompatible
实施 'com.android.support:recyclerview-v7:28.0.0'
实施 'com.google.android.gms:play-services-ads:15.0.1'
实施 'com.google.android.gms:play-services-gcm:15.0.1'
实施 'com.google.firebase:firebase-core:16.0.1'
实施 'com.google.firebase:firebase-messaging:17.0.0'
测试实施 'junit:junit:4.12'
实施项目(路径:':slider')
实施 'com.onesignal:OneSignal:3.9.1'
实施 'com.squareup.picasso:picasso:2.71828'
实施 'uk.co.chrisjenx:calligraphy:2.3.0'
实施项目(路径:':RadioLibrary')
实施 'com.google.android.ads.consent:consent-library:1.0.4'
实施 'com.makeramen:roundedimageview:2.3.0'
实施 'com.pkmmte.view:circularimageview:1.1'
实施 'com.sothree.slidinguppanel:library:3.4.0'
实施 'com.github.castorflex.smoothprogressbar:library-circular:1.3.0'
实施 'com.h6ah4i.android.widget.verticalseekbar:verticalseekbar:0.7.2'
实施 'com.labo.kaji:relativepopupwindow:0.3.1'
实施 'com.google.android.exoplayer:exoplayer:2.8.1'
实施 'fr.baloomba:viewpagerindicator:2.4.2'
实施 'com.github.iammert:MaterialIntroView:1.5.2'
实施 'org.apache.commons:commons-lang3:3.4'
//不检查GradleCompatible
实施 'com.android.support:preference-v7:28.0.0'
实施 'com.android.support:multidex:1.0.3'
实施项目(':图书馆')
}
应用插件:'com.google.gms.google-services'
将您的 gradle 更改为:
android {
compileSdkVersion 29
defaultConfig {
applicationId "com.panache.fm"
minSdkVersion 16
targetSdkVersion 29
versionCode 4
versionName "1.3"
multiDexEnabled true
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
manifestPlaceholders = [onesignal_app_id : "77d104e0-6665-4288-a324-b74296fe24d4",
// Project number pulled from dashboard, local value is ignored.
onesignal_google_project_number: "REMOTE"]
}
splits {
abi{
enable true
reset()
include 'x86_64','x86','armeabi','armeabi-v7a','arm64-v8a'
universalApk true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
更新
这两个配置好像不能同时设置。所以你有两个选择:
- 禁用拆分 APK(您已经知道了)。那么您将拥有一个 APK。
- 删除
ndk.abiFilters
设置。比您将拥有多个(可能小得多)APK。此外,如果 universalApk
为真,将生成一个具有所有架构的通用 APK(可能比选项 1 大得多)。
apply plugin: 'com.android.application'
android { compileSdk版本29 默认配置{ 应用程序 ID "com.panache.fm" minSdkVersion 16 targetSdk版本 29 版本代码 4 版本名称“1.3” multiDexEnabled 真 testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
manifestPlaceholders = [onesignal_app_id : "77d104e0-6665-4288-a324-b74296fe24d4",
// Project number pulled from dashboard, local value is ignored.
onesignal_google_project_number: "REMOTE"]
ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
buildTypes.each {
it.buildConfigField 'String', 'SERVER_URL', SERVER_URL
}
sourceSets {
main {
res.srcDirs = ['src/main/res', 'src/main/res/assets', 'src/main/assets', 'src/main/res/drawable-hdpi', 'src/main/res/drawable-mdpi', 'src/main/res/drawable-xhdpi', 'src/main/res/drawable-xxhdpi', 'src/main/res/values-sw600dp', 'src/main/res/values-sw720dp-land', 'src/main/res/values-v14', 'app/libs/armeabi', 'libs/armeabi', 'libs/armeabi-v7a', 'src/main/jniLibs', 'src/main/jniLibs/armeabi', 'src/main/jniLibs/armeabi-v7a', 'libs/mips', 'libs/x86']
}
}
}
依赖项{ 实现文件树(目录:'libs',包括:['*.jar']) android测试实现('com.android.support.test.espresso:espresso-core:2.2.2',{ 排除组:'com.android.support',模块:'support-annotations' }) //不检查GradleCompatible 实施 'com.android.support:appcompat-v7:28.0.0' //不检查GradleCompatible 实施 'com.android.support:cardview-v7:28.0.0' 实施 'com.android.support.constraint:constraint-layout:1.1.3' //不检查GradleCompatible 实施 'com.android.support:design:28.0.0' //不检查GradleCompatible 实施 'com.android.support:recyclerview-v7:28.0.0' 实施 'com.google.android.gms:play-services-ads:15.0.1' 实施 'com.google.android.gms:play-services-gcm:15.0.1' 实施 'com.google.firebase:firebase-core:16.0.1' 实施 'com.google.firebase:firebase-messaging:17.0.0' 测试实施 'junit:junit:4.12' 实施项目(路径:':slider') 实施 'com.onesignal:OneSignal:3.9.1' 实施 'com.squareup.picasso:picasso:2.71828' 实施 'uk.co.chrisjenx:calligraphy:2.3.0' 实施项目(路径:':RadioLibrary') 实施 'com.google.android.ads.consent:consent-library:1.0.4' 实施 'com.makeramen:roundedimageview:2.3.0' 实施 'com.pkmmte.view:circularimageview:1.1' 实施 'com.sothree.slidinguppanel:library:3.4.0' 实施 'com.github.castorflex.smoothprogressbar:library-circular:1.3.0' 实施 'com.h6ah4i.android.widget.verticalseekbar:verticalseekbar:0.7.2' 实施 'com.labo.kaji:relativepopupwindow:0.3.1' 实施 'com.google.android.exoplayer:exoplayer:2.8.1' 实施 'fr.baloomba:viewpagerindicator:2.4.2' 实施 'com.github.iammert:MaterialIntroView:1.5.2' 实施 'org.apache.commons:commons-lang3:3.4' //不检查GradleCompatible 实施 'com.android.support:preference-v7:28.0.0' 实施 'com.android.support:multidex:1.0.3' 实施项目(':图书馆') } 应用插件:'com.google.gms.google-services'
将您的 gradle 更改为:
android {
compileSdkVersion 29
defaultConfig {
applicationId "com.panache.fm"
minSdkVersion 16
targetSdkVersion 29
versionCode 4
versionName "1.3"
multiDexEnabled true
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
manifestPlaceholders = [onesignal_app_id : "77d104e0-6665-4288-a324-b74296fe24d4",
// Project number pulled from dashboard, local value is ignored.
onesignal_google_project_number: "REMOTE"]
}
splits {
abi{
enable true
reset()
include 'x86_64','x86','armeabi','armeabi-v7a','arm64-v8a'
universalApk true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
更新
这两个配置好像不能同时设置。所以你有两个选择:
- 禁用拆分 APK(您已经知道了)。那么您将拥有一个 APK。
- 删除
ndk.abiFilters
设置。比您将拥有多个(可能小得多)APK。此外,如果universalApk
为真,将生成一个具有所有架构的通用 APK(可能比选项 1 大得多)。