Студия Android создает выпуск apk, который не обрабатывается MAM, но мой отладочный apk обрабатывается MAM.

Я пытаюсь внедрить Intune SDK в существующее бизнес-приложение, и Azure, похоже, принимает мой отладочный APK-файл как обрабатываемый MAM, но не мой релизный APK-файл. Я не очень хорошо знаком со студией Android, но, насколько я могу судить, мой build.gradle выглядит правильно. Я также считаю, что, возможно, добавленный мной код необходимо написать по-другому, чтобы apk-версия работала, но я хотел сначала исключить самые простые ошибки, если это возможно.

мой build.gradle

      apply plugin: 'com.android.application'
apply plugin: 'com.microsoft.intune.mam'

def versionMajor = 22
def versionMinor = 1
def versionPatch = 999
def versionBuild = 7

android {
    signingConfigs {
        debug {
            storeFile file('**.jks')
            storePassword '****'
            keyAlias '***'
            keyPassword '****'
        }
        config {
            keyAlias '****'
            keyPassword '****'
            storeFile file('****.jks')
            storePassword '****'
        }
    }
    compileSdkVersion 31
    defaultConfig {
        applicationId "a.client"
        minSdkVersion 18
        targetSdkVersion 31
        multiDexEnabled true
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_7
            targetCompatibility JavaVersion.VERSION_1_7
        }
        versionCode versionMajor * 10000 + versionMinor * 1000 + versionPatch * 100 + versionBuild
        versionName "${versionMajor}.${versionMinor}.${versionPatch}.${versionBuild}"
        manifestPlaceholders = [
                'appAuthRedirectScheme': 'com.onmicrosoft.demo.exampleapp'
        ]
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            signingConfig signingConfigs.config
        }
    }
    lintOptions {
        checkReleaseBuilds false
    }
    productFlavors {
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    implementation 'androidx.constraintlayout:constraintlayout:2.1.0'
    implementation files('libs/IntermecDataCollection.jar')
    implementation project(':HoneywellDataCollection')
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    implementation 'org.apache.commons:commons-text:1.6'
    implementation 'de.proglove:connect-sdk:1.5.0'
    implementation 'net.openid:appauth:0.8.1'
    implementation 'com.squareup.okio:okio:2.10.0'

    // Include the MAM SDK
    implementation files('libs/Microsoft.Intune.MAM.SDK.aar')

    // Include MSAL
    implementation 'com.microsoft.identity.client:msal:2.0.8'
}

Я попытался добавить отдельный buildType с отлаживаемым значением true и установить для отладки значение false в типе сборки выпуска. Я также попробовал изменить активный вариант сборки, пересобрать, а затем собрать подписанный APK.

1 ответ

Кажется, это может быть какая-то ошибка в AGP версий 4.2 и выше. https://github.com/msintuneappsdk/ms-intune-app-sdk-android/issues/117

Добавление этого в gradle.properties, похоже, помогло. android.enableResourceOptimizations=false

Другие вопросы по тегам