Développement iOS: Comment puis-je empêcher un iPad d'exécuter une application universelle en mode iPad?
Je suis plongée dans le développement d'iOS et j'ai créé une application universelle qui s'est transformé en un iPhone seule application. Lorsqu'il s'exécute sur l'iPad, c'est juste des charges d'un écran blanc car il n'y a pas de iPad code écrit encore. Ce que j'aimerais c'est pour qu'il fonctionne en "iPhone" de mode sur l'iPad, si c'est en quelque sorte se termine sur un iPad. J'ai le "Périphérique Ciblé de la Famille" propriété est définie sur "iPhone", ce qui devrait l'empêcher d'apparaître dans l'App Store une application iPad, mais si quelqu'un possède un iPad et un iPhone, l'application pourrait synchronisés à l'iPad, à quel point il suffit de charger l'écran blanc, car il va essayer de lancer l'application sur l'iPad en mode, il n'a pas de code à l'appui. Dans cette situation, je préfère qu'il fait, couru sur l'iPad, mais dans l'iPhone mode.
Mes questions sont...
- Lorsqu'un iPad exécute une application universelle, comment sait-elle de la faire fonctionner en "iPhone mode" ou d'exécuter l'iPad code spécifique?
- Dans une app universelle, comment fait-il savoir quel code est iPhone, et dont le code est iPad?
- Comment puis-je empêcher l'iPad d'essayer d'exécuter l'iPad code et, au lieu de cela, lancez l'iPhone code?
Je m'excuse si j'ai l'air d'un noob total, mais je le suis. Merci beaucoup pour votre sagesse!
source d'informationauteur BeachRunnerFred
Vous devez vous connecter pour publier un commentaire.
Je suis en supposant que ce que vous voulez vraiment est de supprimer la mention "universel" de la capacité, et il suffit de faire une application iPhone.
Dans Xcode, aller au Projet => Modifier les Paramètres de Projet => Build.
De recherche universelle, ou "Périphérique Ciblé Famille".
Choisir iPhone.
Au revoir iPad.
L'iPad ressemble pour le
Targeted Device Family
si l'iPad n'est pas présent, alors il sait qu'il doit lancer l'application sur iPhone mode.Lorsque vous écrivez le code de l'application, vous devez spécifier de quel appareil vous sont ciblés, si il ya des choses spécifiques que vous devez faire par appareil. (voir l'exemple de code ci-dessous)
Ne prennent pas en charge l'iPad dans votre
Targeted Device Family
. Deuxièmement, dans votre code, ne précise pas que le code spécifique a besoin d'un dispositif spécifique, par exemple:Si vous construisez une application universelle, il permettra d'utiliser votre iPad code. Il n'est pas possible d'exécuter une application universelle dans "l'iPhone en Mode". Apple va vérifier que vous avez bien suivi l'iPad spécifications de conception.
Dans une app universelle, il y a deux app-délégués: AppDelegate_iPhone.h et AppDelegate_iPad.h
Vous pouvez ajouter votre iPhone code dans le AppDelegate_iPad, mais Apple ne va pas être content.
Vous ne devez PAS ajouter cette page à vos Infos.fichier plist. Au lieu de cela, ajouter à vos paramètres de construction de la par d'Apple suggestion. Plus précisément, le TARGETED_DEVICE_FAMILY paramètre de construction.
Si vous utilisez des story-boards, vous aussi vous voulez supprimer le UIMainStoryboardFile~ipad clé de votre Info.plist comme il sera utilisé quel que soit votre TARGETED_DEVICE_FAMILY réglage.
Bonne chance!
Je pense qu'il y a une entrée dans l'info.fichier plist pour chacun des appareils qui dit qui de la fenêtre principale pour charger.
Peut-être un moyen rapide et sale solution serait de définir à la fois MainWindow-iPhone et MainWindow-iPad au même -iPhone - fenêtre principale.
Une autre façon de faire (avec code):
Dans votre Application AppDelegate (si votre Application a été créé comme une Application Universelle), vous pouvez trouver le code suivant:
Là, vous pouvez personnaliser la vue à afficher.
Depuis
Xcode 5
vous pouvez choisir votre objectif de développement des dispositifs du Projet:Dans la section appareils dans
Development Info
maintenant, vous pouvez choisir:Je pense que quelque chose est incorrect avec votre configuration, parce que si vous ciblez le code pour iPhone seul Appareil, l'application de la bu exécutable sur un iPad avec l'écran qui a été conçu pour l'iPhone (et donc, réduit, avec la possibilité de x2).
[[UIDevice currentDevice] userInterfaceIdiom]
mentionné supra...