2010-12-02 17 views
14

Ich habe eine Qt-App, die auf OS X läuft und die Möglichkeit bietet, in den neuen Mac App Store zu gehen.Qt-Anwendungen im neuen Mac App Store

Ich habe die Richtlinien unter https://developer.apple.com/appstore/mac/resources/approval/guidelines.html überprüft. Ich habe auch einen Post hier über SO über Java und den AppStore gesehen.

Hat jemand anderes dies mit seinen eigenen Apps berücksichtigt und ob das Qt-Framework mit der App-Polizei in Konflikt gerät oder nicht? Sie müssen immer noch innerhalb der Apple HIG bleiben, d. H. Kein Theming und keine privaten APIs verwenden.

Noch scheint wie ein riskantes Angebot gegenüber reinem ObjC. Noch jemand versucht?

+0

Was ist Ihre eigentliche Frage? Ob Qt-Apps akzeptiert werden? Das einzige, was ich in den Richtlinien sehe, sind die HIG- und API-Einschränkungen, die eine gewisse Abstimmung mit einer Qt-basierten App erfordern. –

+0

Das ist eine korrekte Interpretation der Frage. Das habe ich auch gesehen - vorausgesetzt, ich habe kein anderes Kleingedrucktes übersehen. Es gibt auch viele andere "kleine" Dinge, z.B. kann keine Kexte, keine Lizenzschlüssel oder "eigenen" Kopierschutz, Eskalation zu Root-Rechten usw. installieren, aber diese Einschränkungen sind für alle Apps relevant, d. h. es ist eine enge Sandbox. –

Antwort

16

Meine Qt-App wurde heute akzeptiert und ist im App Store verfügbar. Die Antwort ist also Ja, Apple wird Qt-basierte Anwendungen akzeptieren.

Hier finden Sie einige Informationen zu meiner Anwendung. Es ist in C++ geschrieben und verwendet Qt v4.7.2 unter der LGPL-Lizenz. Die Qt-Frameworks sind im App-Bundle enthalten (offensichtlich, wie LGPL erfordert, verwende ich dynamische Verknüpfung statt statisch). Es gibt auch einige andere Frameworks, von Nikon und Canon, weil es eine App zur Fernsteuerung von DSLR-Kameras ist - siehe http: www.hartcw.com. Diese sind nur für Intel 32bit kompiliert, daher zwingt meine App auch 32bit zu zielen, und so muss ich die 32bit Carbon Build von Qt verwenden.

In Bezug auf Dateien auf der lokalen Festplatte zu schreiben, ist es nicht etwas zu dem Bündel Verzeichnis schreiben, aber in dieses Verzeichnis schreibt:

~/Application Support/Hart/Smart Shooter 

Es schreibt auch Qt GUI-Zustand dieser Datei (über die QSettings Klasse)

~/Library/Perferences/com.hartcw.SmartShooter.plist 

'Hart' ist der Name der Firma, wie mit Apple registriert und 'com.hartcw.SmartShooter' ist die App Bezeichnernamen, so dass ich denke, das ist es, was gegen Apple überprüft.

auch ein paar Dinge, es gab ich die plist-Datei in Bezug auf zu tun hatte, siehe http://hartcw.com/francis/qt-and-the-mac-app-store

Infact wurde es erstmals von Apple akzeptiert! Es war etwa 10 Tage lang in der Phase "Warten auf Überprüfung", dann wechselte es für etwa 4 Stunden zu "Review" und ging dann im App Store live.

3

Die Verwendung von Qt ist überhaupt kein Problem für die Erstellung einer App für den App Store. Alles, was Sie tun müssen, ist sicherzustellen, dass Sie Qt verwenden, das mit Cocoa und nicht mit Carbon kompiliert wurde.

EDIT: Ich habe das gerade gefunden es ein Problem sein kann, wenn Ihre Anwendung Qt Plugins verwendet (wie dies anscheinend Qt schreiben zu ~/Library/Preferences/com.trolltech.plist, die außerhalb der ‚Domain macht 'einer App Store-Anwendung.)

Verwandte Themen