AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Android: PAclient Exit Code 1

Ein Thema von greenmile · begonnen am 6. Sep 2014 · letzter Beitrag vom 20. Sep 2014
Antwort Antwort
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#1

Android: PAclient Exit Code 1

  Alt 6. Sep 2014, 22:31
Hallo,

jetzt stolpere ich endlich mal (wieder) über den Exit Code 1. Ich wollte ein XE6 Projekt mit einigen kleineren Änderungen unter XE7 auf einem Android (S5) Gerät testen und siehe da ... Exit Code 1. DCU's habe ich schon gelöscht, das Gerät läuft unter XE6 einwandfrei, Debug Modus etc. sind also aktiviert. Vorher wird folgender Befehl ausgeführt:

Code:
  c:\program files (x86)\embarcadero\studio\15.0\bin\paclient.exe -u8 
  --aaptpackage="C:\Users\Public\Documents\Embarcadero\Studio\15.0\PlatformSDKs\adt-bundle-windows-x86-20131030\sdk\build-tools\android-4.4\Aapt.exe,.\Android\Release\xxx\library,.\Android\Release\xxx\classes,.\Android\Release\xxx\res,.\Android\Release\xxx\assets,.\Android\Release\xxx\AndroidManifest.xml,C:\Users\Public\Documents\Embarcadero\Studio\15.0\PlatformSDKs\adt-bundle-windows-x86-20131030\sdk\platforms\android-19\android.jar,.\Android\Release\xxx\bin\xxx-unsigned.apk"
Es kommt in folge also nicht zu einer Signierung. Führe ich den Befehl in einer CMD aus, so kommt der Fehler

Code:
xxx\res\drawable\splash_image_def.xml:2: error: Error: No resource found that matches the given name (at 'src' with value '@drawable/splash_image').
Die Lösung ist ganz einfach: In den Projekt-Optionen war das "Startbild". Das war aktiviert, aber nicht definiert. Aktiviert habe ich es nie (in XE6 gibt es die Option noch nicht).

===

Als nächstes kam der PA Client 8. Der kam, weil es im Verzeichnis "c:\Users\Public\Documents\Embarcadero\Studio\15.0 \PlatformSDKs\adt-bundle-windows-x86-20131030\sdk\tools\" keine "ZIPAlign.exe" gab.

===

Zu guter letzt habe ich mindestens 1 Stunde mit ShowMessage und MessageDlg verbracht. Sorry EMBT, aber irgendwie lauft ihr nicht ganz rund. Es mag ja sein, dass die unter Android nicht blockierend sein dürfen, aber es lief gut. Hier ein Workaround für alle Pfuscher:

Code:
procedure TfrmMain.ShowMessage(const Msg: string);
begin
  MsgDlgResult := -1;
  FMX.Dialogs.MessageDlg(Msg, TMsgDlgType.mtInformation, [TMsgDlgBtn.mbOk], 0,
     procedure(const AResult: TModalResult)
     begin
       MsgDlgResult:= AResult;
     end
  );
  while MsgDlgResult<0 do Delay(10);
end;

function TfrmMain.MessageDlg(const Msg: string; DlgType: TMsgDlgType;
  Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer;
begin
  MsgDlgResult := -1;
  FMX.Dialogs.MessageDlg(Msg, DlgType, Buttons, HelpCtx,
            procedure(const AResult: TModalResult)
            begin
              MsgDlgResult:= AResult;
            end
          );
  while MsgDlgResult<0 do Delay(10);
  Result := MsgDlgResult;
end;
===

Die gute Nachricht (und allen diesbezüglichen Diskussionen hier zum Trotze) werden Android-App's jetzt nach Aufruf von "SharedActivity.Finish;" korrekt beendet und lassen sich auch wieder problemlos starten.


Falls also noch andere über diese Fehler stolpern ...

Geändert von greenmile ( 6. Sep 2014 um 23:32 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von roga
roga

Registriert seit: 15. Jun 2008
Ort: Sachsen-Anhalt
109 Beiträge
 
Delphi XE8 Professional
 
#2

AW: Android: PAclient Exit Code 1

  Alt 20. Sep 2014, 13:57
...stundenlanges Suchen - und hier die Lösung gefunden: verdammtes Startbild! Deaktiviert und das apk wurde ohne Fehler erstellt.

DANKE greenmile
Ronald
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.126 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Android: PAclient Exit Code 1

  Alt 20. Sep 2014, 14:13
Hallo,

jetzt stolpere ich endlich mal (wieder) über den Exit Code 1. Ich wollte ein XE6 Projekt mit einigen kleineren Änderungen unter XE7 auf einem Android (S5) Gerät testen und siehe da ... Exit Code 1. DCU's habe ich schon gelöscht, das Gerät läuft unter XE6 einwandfrei, Debug Modus etc. sind also aktiviert. Vorher wird folgender Befehl ausgeführt:
Shitt, Sorry hätte ich natürlich auch mal posten können. Bin natürlich in die gleiche Falle getappt. (Eine von vielen, bei der Übernahme von XE6 Projekten nach XE7)
Habe mich trotzdem dazu entschlossen, das Projekt unter XE7 neu an zu legen und dann alle Files hinzu zu fügen, da ich unter Bereitstellung nicht um das autocreate aller Files rum gekommen bin.

Außerdem hatte ich dadurch noch "alte" XE6 Pfade drin.

Umstellung von XE6 auf XE7 hat mich bisher 2 Tage gekostet.
Siehe auch mein anderen Thread zu XE7

Mavarik
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz