J'ai développé une application de bureau pour Mac et j'ai besoin que nos utilisateurs installent quelques pilotes pour exécuter notre application sur OS X.
En raison de la contrainte de la sandbox, je ne peux pas obtenir l'autorisation d'accès de l'utilisateur pour installer les pilotes dans l'environnement de l'entreprise. /Users/System Name/Library/
dossier. (i.e.,) Il demandera à l'utilisateur la permission d'installer les pilotes à partir d'un seul package d'installation Mac pour installer les pilotes avant d'accéder à l'App Mac.
De plus, je ne suis pas en mesure de regrouper les pilotes dans un seul paquet pour installer les pilotes et l'application Mac en raison des contraintes de la Sandbox. Je vais donc devoir séparer l'installation des pilotes et l'installation de l'application Mac en deux étapes.
J'ai soumis l'application à l'équipe de révision d'Apple avec les instructions d'installer les pilotes, puis d'installer l'application Mac pour exécuter la fonctionnalité souhaitée. J'ai également détaillé la vidéo pour effectuer les étapes. Mais l'équipe de révision a rejeté l'application avec la raison suivante :
Raisons :
2.3 : Les applications qui ne fonctionnent pas comme annoncé par le développeur seront rejetées.
Nous vous écrivons pour vous informer que la Commission de révision de l'appel a a terminé son examen de votre appel et a déterminé que cette version de votre application est en violation de la ligne directrice 2.3. Nous avons déterminé que votre application exige que l'utilisateur télécharge et installe un logiciel supplémentaire logiciel supplémentaire pour que l'application fonctionne comme annoncé. Les applications ne doivent pas obliger l'utilisateur à installer des logiciel supplémentaire pour que l'application fonctionne. Nous allons poursuivre l'examen de votre application en gardant cela à l'esprit.
J'ai compris que les utilisateurs ne doivent pas installer de logiciel supplémentaire pour que l'application fonctionne, mais j'ai besoin de connaître les moyens possibles de soumettre l'application dans le Mac Store pour bénéficier des avantages du Mac Store au lieu de la publier en dehors du Mac App Store. Vos précieuses suggestions seraient utiles pour apporter des modifications à la conception de cette solution.
Mise à jour :
Voici la conception et le flux technique de mon application Mac :
- Le produit est en fait utilisé pour stocker les documents sur le serveur et utiliser les documents pour le stockage et l'impression en nuage. J'ai deux options pour envoyer les documents dans le nuage :
a) Les utilisateurs peuvent cliquer avec le bouton droit de la souris sur n'importe quel document et le transmettre à l'application Mac pour qu'elle envoie le document au serveur en nuage.
b) J'ai une autre option qui consiste à envoyer les documents à partir de l'option d'impression (ctrl+P), je convertirais les documents en format générique pour qu'ils soient compris par les serveurs en nuage. Cette fonctionnalité apporterait plus de valeur aux utilisateurs et je veux m'en tenir à cette approche également. L'utilisateur peut transmettre n'importe quel document via la fonction d'impression de document et les fichiers du pilote Mac et quelques autres fichiers de soutien seront communiqués à l'application Mac pour un traitement ultérieur.
- Mac App affichera la liste des fichiers téléchargés / le statut de chaque document.
Pourquoi avez-vous besoin des pilotes en premier lieu ?
ANS : Les fichiers pilotes ont beaucoup de fonctionnalités sur la gestion des formats de documents, ce qui serait utile sur le nuage, donc je dois avoir des fichiers pilotes dans mon architecture et sur la base de mes exigences commerciales.
Ne pouvez-vous pas intégrer cette fonctionnalité directement dans votre application ? et quel type de recherche avez-vous déjà effectué sur le sujet de l'intégration de pilotes de périphériques dans les téléchargements de l'App Store (en dehors de cet article bien sûr).
ANS : Oui, j'ai essayé d'intégrer les fichiers du pilote dans l'application elle-même, j'ai poussé pour installer dans le dossier /Users/System Name/Library/Printers/ aussi bien et la conception fonctionne bien sans sanboxing. Après avoir activé le Sanboxing, il n'effectue aucune vérification des autorisations de l'utilisateur et aucune mise à jour au niveau du système, car il obtiendra les autorisations de l'utilisateur pour installer les pilotes à énumérer dans les options d'impression des documents.
J'ai également essayé de séparer l'installation du pilote en tant qu'application distincte et l'application Mac en tant qu'autre application, mais l'application a été rejetée par l'équipe de révision pour les raisons mentionnées ci-dessus.
1 votes
Pourquoi avez-vous besoin des pilotes en premier lieu ? Ne pouvez-vous pas intégrer cette fonctionnalité directement dans votre application ? Il serait également bon de savoir de quel type d'application il s'agit et quelles recherches vous avez déjà effectuées sur le sujet de l'intégration de pilotes de périphériques dans les téléchargements de l'App Store (en dehors de cet article, bien sûr).
0 votes
@patrix Veuillez consulter la section mise à jour de vos questions pour plus d'informations. Ce serait bien si je recevais quelques indices.
0 votes
Pourquoi ne pouvez-vous pas charger les pilotes en tant que paquets dans l'application ? Pourquoi doivent-ils être des exécutables séparés ?
0 votes
Merci pour la réponse. Oui, nous pouvons regrouper les pilotes avec l'application. Mais nous devons installer les pilotes (pilotes d'impression) en les plaçant dans ce dossier (/Utilisateurs/Nom du système/Bibliothèque/Printers/). Je ne peux pas faire ce qui précède en raison des contraintes de sandbox. J'ai mentionné ce problème dans mon message.
0 votes
Pourquoi ne pas mettre les pilotes dans le nuage, c'est-à-dire près de l'imprimante ?
0 votes
Les pilotes @Mark doivent être installés sur la machine locale de l'utilisateur dans ce dossier (/Utilisateurs/Nom du système/Bibliothèque/Printers/) pour bénéficier des fonctionnalités et faire fonctionner l'application.
0 votes
Vous n'obtiendrez jamais l'autorisation de le faire - vous devrez trouver une autre méthode.
0 votes
@Mark J'aimerais savoir s'il y a d'autres façons de procéder ?
0 votes
Sans recodage de l'application pour répondre aux directives d'Apple, vous devrez compter sur la vente de votre application en dehors du MAS. C'est aussi simple que cela, j'en ai peur. Il n'y a aucun moyen de contourner les directives d'Apple. Vous êtes le développeur. Vous connaissez le code de base et les exigences. Il n'y a pas d'échappatoire. Soit vous nous demandez de vous fournir un moyen de contourner la politique d'Apple, soit vous nous demandez de vous dire comment coder votre application.
0 votes
@cksum pouvez-vous poster votre dernier commentaire comme une réponse ?
1 votes
@patrix fait. Je l'ai un peu étoffé. Je déteste donner des réponses sans issue, mais...
0 votes
J'ai enlevé le tag cacao puisque nous ne sommes pas une ressource au niveau du code. Nous autorisons iTunes à se connecter et dans la mesure où il s'agit de savoir comment fonctionne techniquement le sandboxing et comment Apple gère le programme de développement en termes de règles et de procédures, j'espère qu'il est possible de conserver ce sujet ici.