簡體   English   中英

使用 Android Studio 生成未簽名的發布 apk

[英]Generating unsigned, release apk with Android Studio

我需要生成一個未簽名的發布APK(然后其他人將對其進行簽名並將其發布到商店 - 由其他人處理密鑰和其他所有內容)。 我的問題是,每當我嘗試構建時,Android Studio 都會拋出錯誤:

app-flavorUnsigned-release-unsigned.apk is not signed. Please configure the signing information for the selected flavor using the Project Structure dialog.

我已經嘗試了幾種以前的方法:

  • 創建工件失敗(在任何地方都找不到任何帶有“工件”的菜單,盡管對於編輯配置,我找到了選擇自定義工件的選項)[可能是最好的選擇]
  • 創建一個空的簽名配置
  • 創建自定義風味
  • 使用終端運行gradle assemblegradle assembleRelease (由於我嘗試構建的重要模塊庫之一而失敗)

這是我當前的 [應用程序] build.gradle:

apply plugin: 'com.android.application'

android {
    signingConfigs {
        unsigned {
            storePassword = ""
            keyAlias = ""
            keyPassword = ""
        }
    }
    compileSdkVersion 19
    buildToolsVersion "20.0.0"
    defaultConfig {
        applicationId "hiddenForClientPrivacy"
        minSdkVersion 13
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
        signingConfig signingConfigs.unsigned
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.unsigned
        }
        unsignedBuild {
            debuggable false
            versionNameSuffix '-unsigned'
            signingConfig signingConfigs.unsigned
        }
        debug {

        }
    }
    productFlavors {
        flavorUnsigned {
            versionCode = 1;
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:20.0.0'
    compile project(':SlidingMenu')
    compile 'com.android.support:support-v13:20.0.0'
    compile 'com.github.castorflex.verticalviewpager:library:19.0.1'
}

感謝您的任何幫助。

幫助后編輯:正如標記的接受答案所示,我必須清除發布塊。 此外,我點擊了“運行”按鈕 - 這應該適當地顯示一個錯誤,因為我無法在模擬器或設備上運行未簽名的發行版 apk。 接受的答案描述了一切。

release構建類型中,根本不要指定signingConfig ,您的構建將不會被簽名。 發布版本不會選擇調試版本獲得的默認簽名配置,因此它應該適用於那些。

在 adt-dev 郵件列表上有一個關於它的討論

請記住,要從 Android Studio 構建,您需要轉到 Gradle 任務窗口並選擇assembleRelease任務; 通過“Make Project”進行的正常構建實際上並不構建最終的 APK。

實際上,您可以通過構建它來構建一個未簽名的 .APK:

要生成它,在 Android Studio 的左側,有一個Build Variants菜單(可能垂直書寫)。 點擊它。

出現了 Build Variants 窗口選項卡,單擊debug並通過release更改它。

重建您的項目應用程序> Build > Rebuild Project

然后單擊Run ,出現一個新窗口,單擊Run > Continue > 選擇要運行的設備 > OK

該應用程序將無法在您的設備上運行,但 .apk 的發布版本將生成到與調試版本相同的目錄中:

  • C:\\ANDROID_PROJECT_DIRECTORY\\app\\build\\outputs\\apk\\

您可以注意到名稱是app-release-unsigned.apk ,這正是我們想要的。

有關本教程網站的更多信息。

我不得不做同樣的事情(因為應用程序簽名是在其他地方處理的),我只是重新構建了項目。

要生成未簽名的發行版 apk ,請在Build Variants菜單中選擇發行版。

注意:您可能會在頂部菜單的應用配置中看到一個紅色叉號,請忽略它。

重建您的項目應用程序Build > Rebuild Project

您將在以下位置找到您的 app-release-unsigned.apk:

  • ~\\app\\build\\outputs\\apk\\release\\

注意:如果需要創建其他版本,請保存生成的apk,因為后續重建會覆蓋當前的apk(...不要像我一樣)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM