Einzelnen Beitrag anzeigen

Rollo62

Registriert seit: 15. Mär 2007
4.093 Beiträge
 
Delphi 12 Athens
 
#7

AW: Hat Jemand schonmal mit TestFairy herumgespielt ?

  Alt 12. Mai 2016, 22:37
Ich bin schon ein bischen weiter damit unter iOS:

- Neues TestProjekt angelegt, auch komplett in Apple iOS und iTunes (ist vielleicht unnötig)
- Provisioning files sind angelegt, AdHoc and Distribution certificates sind da
AdHoc schein das zu sein was TestFairy-Distribution braucht
- AppStore entry ist vorbereitet, aber nicht veröffentlicht zur Prüfung
- SDK static lib ist eingebunden
- Dazu muss FMX.Platform.iOS eingebunden und gefixt werden (siehe Beispeil)
- die Library files *.a und *.h vom SDK habe ich im Beispiel s.u. nicht mit reingelegt, wegen möglicher
Lizenzprobleme (kann man von hier bekommen)
- die Library files habe ich mit ins Src Verzeichnis des Projektes gelegt (soll da statisch gelinkt werden)
- Ein call begin("appToken"); wird direkt nach dirFinishLaunchingWithOptions aufgerufen,
mit dem AppToken von TestFairy.
- Build mit Arm7 64/32 byte dual boot code, mit richtigem Provisioning, etc.
- Debug läuft OHNE TestFairy SDK
- Release und Upload läuft MIT/OHNE TestFairy SDK
- Distribution zum Handy läuft MIT/OHNE SDK
- Installation geht nur mit AdHoc Zertifikat
- Installation geht nur auf den mit AdHoc verbundenen Devices, also maximal 100
- Programm startet MIT SDK, und crasht dann siehe Bilder unten
- Der Upload TestFairy geht, aber meldet "SDK not integrated"
- Crash passiert direkt beim Zugriff auf die statische Library
Delphi-Quellcode:
class procedure TApplicationDelegate.applicationDidFailToRegisterForRemoteNotificationsWithError(self: id; _cmd: SEL;
  application: PUIApplication; error: PNSError);
var
  Message: TPushFailToRegisterMessage;
  ErrorDescription: string;
begin
  ErrorDescription := NSStrToStr(TNSError.Wrap(error).localizedDescription);
  Message := TPushFailToRegisterMessage.Create(TPushFailToRegisterData.Create(ErrorDescription));
  TMessageManager.DefaultManager.SendMessage(nil, Message);
end;

class function TApplicationDelegate.applicationDidFinishLaunchingWithOptions(self: id; _cmd: SEL; application: PUIApplication; options: PNSDictionary): Boolean;
var
  StartupOptions: NSDictionary;
  NotificationSettings: UIUserNotificationSettings;
  LocalNotification: UILocalNotification;
  RemoteNotification: Pointer;
  WindowManager: TCocoaTouchWindowManager;
// ITfLib : IS4TfLibrary; //Add TestFairy Library interface locally probably failed, retry

begin
  Include(FState, TApplicationDelegate.TApplicationTransitionState.Launching);
  try
    //####
    //####
    //## Here the TestFairy settings should be applied
    //##
    //## Create the interface
    //##

    ITfLib := TS4TfLibrary.Create; //!! Hier crasht es, beim Alloc:
    //##
    //## Call the interface wit hthe CORRECT appToken for SDK use
    ITfLib.&begin(StrToNSStr( '0299f3dc7.................b36fce78cb') ); //Begin TestFairy session
    //##
    //## Interface auto-destroyed
    //####
    //####

    StartupOptions := TNSDictionary.Wrap(options);
- Soweit bin ich jetzt gekommen, aber es ist schon wieder 22:30.
Deshalb habe ich das Beispiel mal angehangen, in der Hoffnung das jemand diese Library
richtig eingebunden bekommt.

Rollo
Miniaturansicht angehängter Grafiken
clipboard02.jpg   clipboard01.jpg  
Angehängte Dateien
Dateityp: zip T002_TestFairy.zip (4,66 MB, 0x aufgerufen)
  Mit Zitat antworten Zitat