GameKit e GKPeerPicker il 1 ° iPhone e iPod Touch Gen
-
13-09-2019 - |
Domanda
Questa è la mia attuale serie per il mio gioco multiplayer:
Una vista che dà consigli di connessione e avvisa l'utente che multiplayer non funzionerà al 1 ° iPhone o iPod Touch Gen. C'è un pulsante "connect" che spinge la visione di gioco e comincia il GKPeerPicker.
Purtroppo, non ho un 1 Gen iPhone o iPod Touch per verificare cosa succede se si preme il pulsante di connessione. La vista sarà spinto, ma non so cosa accadrà quando il PeerPicker cerca di mostrare.
Quindi la domanda (s):
Esiste un modo per dire se l'utente non sarà in grado di utilizzare GameKit modo che io possa disattivare la "collegare" il tasto?
Che cosa accadrà se lo fanno premere il pulsante di connessione e GameKit non è disponibile?
Soluzione
Si potrebbe scoprire quale modello di iPhone o iPod touch l'applicazione è in esecuzione, e quindi disattivare la funzione se non è un tipo di iPhone / iPod accettato.
Per fare questo, si potrebbe aggiungere il seguente alla vostra applicazione:
#import <sys/utsname.h>
- (NSString *) machineModel {
struct utsname systemInfo;
uname (&systemInfo);
return [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
}
La chiamata NSLog(@"Type: %@", [self machineModel])
vi darà la href="http://www.drobnik.com/touch/2009/07/determining-the-hardware-model/" rel="nofollow noreferrer"> modello hardware .
Altri suggerimenti
Se non si vuole assolutamente l'applicazione in esecuzione a tutti su hardware non supportato, utilizzare il valore peer-peer
come membro della chiave UIRequiredDeviceCapabilities
nel vostro Info.plist
. Sono abbastanza sicuro che è possibile impostare anche questo con iTunes Connect quando si invia la vostra applicazione. Maggiori informazioni nel Device Support sezione della guida Application Programming iPhone.
Naturalmente, se la vostra applicazione può utilizzare la connessione wifi e Bluetooth, quindi non si vuole fare questo, dal momento che in realtà si può eseguire il 1 ° gen iPhone e tocchi.