2014-12-05 23 views
13

Muszę wygenerować niepodpisany,APK (gdzie ktoś inny następnie podpisze go i wyda do sklepu - z kimś, kto obsługuje klucze i wszystko inne). Moim problemem jest to, że Android Studio generuje błąd, gdy próbuję zbudować:Generowanie niepodpisanego, wydania apk z Androidem Studio

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

Próbowałem kilka, dotychczasowe metody:

  • Niepowodzenie przy tworzeniu artefaktem (nie mogę znaleźć żadnego menu z „Artefakty” gdziekolwiek, choć dla konfiguracji edycji znalazłem opcji do wyboru niestandardowego artefaktu) [Prawdopodobnie najlepszym]
  • utworzenie pustej podpisania config
  • tworzenia niestandardowego smak
  • Korzystanie z terminalu do uruchomienia gradle assemble lub gradle assembleRelease (który nie ze względu na jeden z moich najważniejszych bibliotek modułowych próbuje być zbudowany)

Oto moja aktualna [niej dostępne w] 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' 
} 

Dziękuję za wszelką pomoc.

Po pomocy Edycja: Jak zaznaczono zaznaczoną akceptowaną odpowiedź, musiałem wyczyścić blok zwolnienia. Ponadto kliknąłem przycisk "Uruchom" - który powinien odpowiednio pokazywać błąd, ponieważ nie mogę uruchomić niepodpisanego apk wersji na emulatorze lub urządzeniu. Przyjęta odpowiedź opisuje wszystko.

Odpowiedz

19

W modelu kompilacji release nie podawaj w ogóle nazwy signingConfig, a kompilacja nie zostanie podpisana. Kompilacje wydania nie przechwytują domyślnej konfiguracji podpisywania, którą otrzymują wersje debugowania, więc powinno to działać.

Na liście dyskusyjnej adt-dev znajduje się discussion.

Pamiętaj, że aby zbudować z Android Studio, musisz przejść do okna zadań Gradle i wybrać zadanie assembleRelease; normalne kompilacje za pomocą "Make Project" w rzeczywistości nie budują końcowego pliku APK.

+0

Czy zamiast tego nie będzie używać certyfikatu debugowania/podpisu? – MDragon00

+0

Nie dla wersji wydań. Wypróbuj go i upewnij się, że działa; Nie testowałem tego, ale mam go na dobrym autorytecie, działa. –

+0

Android Studio wciąż mi przeszkadza (może to irytujący blok z nową wersją?). Mój buildType dla wydania jest następujący: "wydanie { }". [Oczyszczone projekt, zsynchronizowane gradle i tak dalej] – MDragon00

4

Właściwie można zbudować niepodpisany apk tylko budując go:

Aby wygenerować go, po lewej stronie Android Studio, istnieje budowy Warianty menu (może być napisany pionowo). Kliknij go.

Build pojawiła się zakładka wariantowych okno, kliknij debug i zmienić go wydaniu.

Przebuduj aplikację projektu > Utwórz> Przebuduj projekt.

Następnie kliknij Uruchom, pojawiło się nowe okno, kliknij Uruchom> i tak dalej> Wybierz urządzenie, które chcesz uruchomić z> OK.

Aplikacja nie będzie działać na urządzeniu ale wersja kompilacji uwalniania swojego apk, zostanie wygenerowany w tym samym katalogu, co te debug:

  • C: \ ANDROID_PROJECT_DIRECTORY \ app \ budować \ wyniki \ apk \

Można zauważyć, że nazwa to app-release-unsigned.apk i dokładnie to, co chcieliśmy mieć.

Więcej informacji na ten temat: tutorial website.

+0

Po zmianie debugowania, aby zwolnić krok, późniejsze kroki można uprościć do 'Build' ->' Build APK', a otrzymasz niepodpisany apk w tym katalogu. –

Powiązane problemy