L'API d'accessibilité cesse de fonctionner après le bac à sable

mon application Mac utilise L'API accessibilité pour déplacer une fenêtre redimensionner (d'autres applications).

j'aimerais soumettre mon application au Mas (Mac App Store). J'ai lu que soumettre une application au MAS est obligatoire pour activer le bac à sable.

quand j'allume le bac à sable mon code ne trouve pas la fenêtre focalisée à travers L'API accessibilité (toujours retourner NULL). La question Est la suivante: L'API accessibilité ne peut-elle pas être utilisée avec sandboxing?

je remarque qu'il y a des applications dans le Mac App Store qui utilisent l'API accessibilité, n'est pas obligatoire sandboxing maintenant?

Merci d'avance.

5
demandé sur zoul 2012-01-15 20:16:56

1 réponses

tout d'abord, par mars juin, 2012, toutes les applications sur le Mac Apple Store devront être Sandbox, à partir de la recherche que j'ai trouvé. Pas de bac à sable ne va pas à l'avenir de votre application.

Deuxièmement, j'ai trouvé 3 stratégies que vous pouvez considérer:

  1. consultez la liste des droits , et voyez si vous pouvez accorder l'accès à votre application via les droits (Apple comment permettre aux applications des privilèges spéciaux d'accéder aux fonctionnalités clés dont elles ont besoin). Voici une visite via la documentation D'Apple sur la façon dont vous pouvez empiler-tracer à travers quels droits vous manquez et pourrait avoir besoin de .
  2. soumettre une demande de bogue à Apple sur la fonctionnalité spécifique à laquelle vous voulez accéder. Qui sait, ils peuvent en fait mettre à jour leur base de données pour vous permettre d'y accéder.
  3. envisager de vendre l'application comme un produit sur un e-commerce site, et de ne pas en vente sur le Mac Apple Store. Les gens peuvent toujours acheter et installer votre application sur un site Web régulier (comme les Versions, TextMate, et d'autres applications merveilleuses ont fait avant d'aller sur MAS), surtout si votre application fait des choses qui ne peuvent pas être trouvés sur le mas.

si vous regardez la documentation, vous constaterez qu'elle indique explicitement que vous ne pouvez pas sandbox une application d'assistance.

voici un extrait de leur documentation sur la préparation D'une application pour bac à sable :

utilisation des API d'accessibilité dans les applications d'assistance

avec App Sandbox, vous pouvez et devez activer votre application pour l'accessibilité, comme décrit dans L'Accessibilité Aperçu. Cependant, vous ne pouvez pas sandbox, une application d'assistance comme les lecteurs d'écran, et vous ne pouvez pas sandbox, une application qui contrôle une autre application.

voici un extrait de de leur documentation sur L'accessibilité dans le cacao :

Note: avec App Sandbox, vous pouvez et devez activer votre application pour l'accessibilité, tel que décrit dans le présent document. Cependant, vous ne pouvez pas sandbox, une application d'assistance comme les lecteurs d'écran, et vous ne pouvez pas sandbox, une application qui contrôle une autre application.

cela sonne un peu comme Double-parler: vous devriez permettre à votre application d'être Accessible toutefois, vous ne pouvez pas sandbox un assistant app...

6
répondu Dominic Tancredi 2012-06-29 12:40:56