Was muss man beachten, wenn man sein Programm in den Apple APP-Store bringen möchte?

Eigentlich sagt der Titel schon alles.
Ich habe eine Anwendung, die ich schon lange zum Download anbiete. Jetzt möchte ich die Anwendung (Mac OS) auch über den App-Store von Apple anbieten. Apple hat dafür ja diverse Regeln.
Gibt es die als Zusammenfassung des Wesentlichen in deutsch?
Oder gibt es eine Checkliste, die man schon mal abarbeiten kann?
Wo sind die üblichen Fallstricke?

Gruß, Stefan Mettenbrink.

Es gibt vieles zu beachten und noch viel mehr Fallstricke. Ich habe am Ende einfach meine Apps an Apple übermittelt und aus den Rückmeldungen (Ablehnungen) gelernt. Das dauerte bis zum Release der ersten App dann etwa 6 Wochen. Aber ich habe sehr viel in dieser Zeit gelernt. :slight_smile:

z.B. bleibe in der Sandbox, jedes Menü muss funktionierende Menüpunkte haben (darf nicht leer sein), …

Das allerbeste was mir in dieser Zeit passierte und wofür ich unendlich dankbar bin, ist AppWrapper.

Als ersten solltest Du den jhrlichen Obulos fr den MacApp-Store entrichten (hier). XCode hast Du ja hoffentlich installiert. Wenn nicht, dann mache das als nchstes. Lade die Zertifikate herunter. Dann kommt AppWrapper dran.

Nach WinzigWeich und Goggle finde ich das Apple-Zeugs am verwirrendsten. Mute vor ein paar Wochen nach einer Neuinstallation die Zertifikate neu laden. Das war echt frustrierend.

HTH

im XDev Magazin gab’s schon einige Artikel dazu.
Vielleicht mal reinschauen?

(alte Ausgaben sind aktuell via OmegaBundle günstig zu haben)

Ist Dein Programm noch Carbon?

Eine etwas moderne Optik wre bestimmt besser im MacApp-Store.

Erst mal Danke für die Tipps.
Den jährlichen Obulus wollte ich so spät wie möglich bezahlen. Ich brauche bestimmt noch geraume Zeit für diverse Vorarbeit, die ohne App Store zu erledigen ist (immerhin läuft mein REALstudio Code bereits in Xojo, auch wenn immer wieder Hinweise wie GUI-Zugriffe aus Threads auftreten).

Der Hinweis auf Artikel im XDev Magazin ist gut. Da muss ich mal auf die Suche gehen.
… Ein kurzer Blick hat noch nicht wirklich geholfen. In den Beschreibungen der aktuelleren Ausgaben fand ich jetzt nichts, was auf einen Artikel für die Aufbereitung für den App-Store hindeutet.

Moderne Optik ist sicherlich eine gute Idee. Vieleicht sollte ich auch überdenken, ob eine Mindestauflösung von 800x600 noch unterstützt werden muss. Ingesamt bin ich sicher nicht auf dem Laufendem, was die Apple Style Guidelines vorgeben.
Gibt es da vieleicht auch einen guten Artikel im XDev Magazin?
Generell habe ich das Probem, dass ich war die Funktionen irgendwie in mein Programm bekomme, für einen guten Designer/Grafiker halte ich mich jedoch nicht. Somit ist die optische Überarbeitung sicher eine Herausforderung.

Das fängt ja schon mit den Icons an. Da muss ich bestimmt auch noch größere Varianten einbauen.

Mir fehlt da irgendwie ein Beginners Tutorial.

Gruß, Stefan Mettenbrink.

Die Apple Style Guidelines haben keine Bedeutung mehr. Jeder macht, wie er mag. Das ist sehr schade, da dabei dann manchmal Programme herauskommen, die schwierig zu bedienen sind. Schau Dich im App-Store um. Wie sehen Deine Konkurrenten aus? Was ich persönlich nicht mag:

  • weiß in weiß in weiß, weil dann alles gleich aussieht (MS Office!!!)
  • kleine Schriften kann ich kaum lesen
  • weiße Schrift auf schwarzem Hintergrund, dann kann ich kaum etwas sehen
  • das gleiche gilt für geringen Kontrast

Es gibt fertige Icons zu kaufen (www.dryicons.com z.B.). Einen Graphikdesigner brauchst Du IMO nur für Dein Programm-Icon.

Und Retina nicht vergessen. Da meckern die Kunden, wenn es das nicht gibt.

Hallo Beatrix,
ich teile deine Bedenken und kann versichern, dass ich das entsprechend berücksichtige. Bei mir git es guten Kontrast, die meisten Farben kann man nach eigenem Bedaf einstellen und auch Schriftart und -größe lassen sich verstellen.

Gruß, Stefan Mettenbrink.

Denk auch an Farbenblinde und check mit einem Simulator:

https://www.google.de/search?q=mac+color+blind+simulator

I myself use Sim Daltonism

Ich glaube Retina ist mittlerweile Pflicht oder?

Sieht so aus, als würdest du noch eine sehr alte Version von Xojo oder RealStudio benutzen?
Manche Dinge, wie zB LiveResize und Textkorrektur gehören heute einfach dazu.

Meine dertzeit öffentlich verfügbaren Programme sind mit RS2010r1 erzeugt worden. Ich habe den Code aber inziwschen auf Xojo 2015r1 angepasst. Der Umstieg auf die aktuelle Version kommt in den nächsten Tagen.

Um Retina habe ich mich bislang noch nicht bemüht. Macht das Xoja nicht automatisch?

LiveResize sagt mir momentan nichts. Auch hier hoffe ich, dass Xojo sich darum kümmert.

Textkorrektur biete ich bereits an (abstellbar in den Einstellungen). Dazu verwende ich das MBS-Plugin. Gibt es da in Xojo etwas aktuelles?

Gruß, Stefan Mettenbrink.

Deine Icons mut Du schon selbst Retina-fhig machen. Alles, was mit Canvas zu tun hat, mu angepat werden. Und nein, das macht Xojo nicht fr Dich.

Alle Controls werden natürlich von der aktuellen Xojo-Version auch in retina dargestellt, aber alle deine Icons müssen in beiden Auflösungen vorliegen.

Textkorrketur kannst du nun Cocoa überlassen, oder weiterhin das MBS-Plugin benutzen.

Live Resize macht Xojo, alle Controls werden beim Vergrößeren eines Fenster visuell angepasst und nicht erst nach dem Losalssen

Wie muss ich dass denn jetzt versthen?
Ich habe doch ein Canvas in einer definierten Größe vorgegeben (z. B. 200x200 Pixel). Wenn ich nun darin zeichne (g.drwaline, g. filloval, etc.) muss ich doch nur diese 200x200Pixel als Berechnungsgrundlage nutzen.
Wenn nun mein Programm auf einem Retina-Rechner läuft, wird das Canvas dann intern mit 400x400 vom System angelegt und die Grafikbefehle entsprechend umgerechnet (so jedenfalls stelle ich es mir vor). Somit sollten diese Grafikbefehle doch von selbst retinafähig sein.

Anpassen müsste ich dann doch lediglich alle Ausgaben wie:
g.DrawPicture Bild,0,0,Canvas.Width,Canvas.Height,0,0,Bild.Width,Bild.Height

Hier müsste ich doch dann lediglich ein doppelt so großes “Bild” vorgeben, welches dann auf niht retinafähigen Rechnern dann halt verkleinert wird. Scheint mir dann doch ein erheblicher Aufwand zu sein :frowning:

Gruß, Stefan Mettenbrink.

Ja genau, es geht lediglich um ein Bild. In deinem, Fall brauchst du das Bild in 200x200 und in 400x400, bei Retina musst du dann das 400er Bild in das Canvas malen, damit es scharf dargestellt wird.

Nein, der Aufwand ist gering, sihet bei mir in der Toolbar zB so aus, dass einmal das Icon in 32x32 und bei Retina in 64x64 gemalt wird.

if ScalingFactor>1 then// Retina
me.ti1.icon=database_add_64
else
me.ti1.icon=database_add_32
end if

Den ScalingFactor musst du pro Fenster ermitteln, da der benutzer ja mehrere Bildschirme haben könnte mit und ohe Retina.
Die methode sieht so aus:

Dim ovi as OSVersionInfo = OSVersion
if ovi.major>=10 and ovi.minor>=7 and TargetCocoa then
Declare Function BackingScaleFactor Lib “AppKit” Selector “backingScaleFactor” (target As WindowPtr) As Double
Return BackingScaleFactor(Self)
Else
Return 1
End if

Kann auch sein, dass es einfacher geht, ich wüsste nur grad nicht wie

Hat sich etwas überschnitten.

Muss ich also alle Grafikausgaben doppelt haben? Etwa so:
If retina then
g.DrawPicture BildRetina,0,0,Canvas.Width,Canvas.Height,0,0,BildRetina.Width,BildRetina.Height
else
g.DrawPicture Bild,0,0,Canvas.Width,Canvas.Height,0,0,Bild.Width,Bild.Height
end

Wird die Textkorrektur in den TexArray und TextField automatisch eingeschaltet oder braucht es dafür zusätzlichen Code?
Ich muss mir doch schon mal die aktuelle Version ansehen. Kann ich halt nur noch nicht compilieren.
Irgendwo findet sich sicher ein kleines Beispiel, muss ich mal suchen.
Was ist in der Nutzung einfacher?
Gibt es eine systemübergreifende Funktion, die ich dann auch unter Windows und Linux nutzen kann?

Das muss ich mir auch mal ansehen. Mal sehen, wie sich das auswirkt. Ich habe momentan keine Vorstellung dazu.

Gruß, Stefan Mettenbrink.

Wenn ich überlege, wie oft ich DrawPicture nutze (379 mal), ist das doch eine Fleißarbeit :frowning:

[quote]Den ScalingFactor musst du pro Fenster ermitteln, da der benutzer ja mehrere Bildschirme haben könnte mit und ohe Retina.
Die methode sieht so aus:[/quote]

OK, ist doch noch einiges zu tun.

Danke für die Tipps!

Gruß, Stefan Mettenbrink.

Hast Du einen Retina-Monitor? Oder wenigstens einen Monitor, der gro genug ist zum Testen? Meiner ist 2560xirgendwas. Das ist nicht toll, reicht aber zum Testen.

Lies mal das hier:

http://blog.xojo.com/advanced-retina/hidpi-bitmapforcaching-and-scalefactorchanged
http://blog.xojo.com/a-journey-of-a-thousand-pixels

Und ja, Retina ist echt Fleiarbeit. Mein Programm ist schon lnger Retina und mit 2016r1 mu ich das alles noch einmal berarbeiten.

Derzeit sitze ich noch an meinem 27" iMac. Ich habe hier aber auch noch einen 40" UHD-Monitor den kann ich als Zweitbildschirm dranhngen.

[quote]Lies mal das hier:
http://blog.xojo.com/advanced-retina/hidpi-bitmapforcaching-and-scalefactorchanged
http://blog.xojo.com/a-journey-of-a-thousand-pixels [/quote]

Urlaubslektre ( am Wochenende gehts los) :slight_smile:

Danke.

Gru, Stefan Mettenbrink.