Acest tutorial demonstrează modul de accesare a dispozitivului cheie și a informațiilor despre utilizator, cum ar fi modelul dispozitivului, numărul versiunii iOS, limba selectată de utilizator și multe altele. Aceste informații pot fi utile în diagnosticarea problemelor legate de aplicații sau în furnizarea de experiențe personalizate în cadrul aplicației.
Deci, de ce doriți să accesați datele dispozitivului?
Utilizatorii de aplicații deseori elaborează e-mail pentru dezvoltatori cu feedback sau pentru a obține ajutor dacă au o problemă. Poate fi util să obțineți mai multe informații despre dispozitivul și mediul utilizatorului, fără a fi nevoie să le întrebați. De exemplu, dacă aplicația dvs. necesită conectivitate la Internet și un utilizator cu e-mailuri iPod touch care spuneți că aplicația nu funcționează corect în timpul drumețiilor, puteți deduce rapid că acest lucru este posibil deoarece utilizatorul nu avea acces la Internet. În plus, cunoașterea versiunii iOS, a versiunii de aplicație și a țării și limbii utilizatorului vă oferă o imagine mai detaliată asupra utilizatorului, a dispozitivului acestuia și a ceea ce poate contribui la problema întâlnită de utilizator.
În plus față de scenariul de urmărire a erorilor și a erorilor prezentate mai sus, accesarea informațiilor din UIDevice sau NSLocale se poate dovedi utilă și pentru personalizarea interfeței sau a comportamentului aplicației dvs..
UIDevice
ClasăEste posibil să recunoașteți UIDevice
clasa de la întâlniri cu orientarea dispozitivului, dar UIDevice
oferă o varietate de proprietăți, metode și notificări care oferă o perspectivă asupra unui dispozitiv. Din urmărirea nivelului bateriei până la determinarea proximității dispozitivului față de fața utilizatorului, scopul lui UIDevice
este de a furniza date despre dispozitivul unui utilizator. UIDevice
clasa oferă, de asemenea, proprietăți accesibile referitoare la identificarea specificelor despre un dispozitiv, cum ar fi modelul și versiunea iOS. Veți vedea unele dintre aceste proprietăți în acțiune, pe măsură ce intrăm în tutorial.
NSLocale
Clasă NSLocale
clasa ajută aplicația dvs. să respecte convențiile culturale și lingvistice din regiunea unui utilizator. Furnizând mijloacele de ajustare a formatării pentru lucruri precum simboluri valutare, separatoare zecimale, timp sau dată, o aplicație va funcționa așa cum se așteaptă utilizatorul. în plus, NSLocale
poate fi folosit pentru a afla ce localizare este setată unui utilizator, o informație utilă atunci când un utilizator vă trimite un e-mail pentru asistență.
Să începem prin a obține modelul dispozitivului (iPhone, iPod touch sau iPad) și versiunea iOS. Următorul cod conține informații specifice dispozitivului UIDevice
:
UIDevice * curentDevice = [UIDevice currentDevice]; NSString * model = [actualul model de model]; NSString * systemVersion = [sistemul actualDeviceVersion];
În primul rând, UIDevice
returnează o instanță a dispozitivului în starea sa actuală. De aici, accesăm proprietățile modelului și ale versiunii sistemului pentru a obține modelul și versiunea de sistem a dispozitivului.
Apoi, vom regăsi specificul despre setările de limbă și regiune ale utilizatorului.
NSArray * languageArray = [NSLocale preferateLanguage]; NSString * language = [obiect languageArray objectAtIndex: 0]; NSLocale * locale = [NSLocale currentLocale]; NSString * țară = [locale localeIdentifier];
Limba principală a utilizatorului poate fi obținută prin utilizarea funcției NSLocale
metodă preferredLanguages
, care returnează setarea limbii curente a utilizatorului. Locația utilizatorului, sau țara / regiunea, poate fi obținută de la adresa returnată NSLocale
obiect. Metoda instanței localeIdentifier
returnează un cod specific care reprezintă țara / regiunea utilizatorului.
În cele din urmă, să aflăm ce versiune a aplicației rulează utilizatorul.
NSString * appVersion = [[NSBundle mainBundle] obiectForInfoDictionaryKey: (NSString *) kCFBundleVersionKey];
Fișierul info.plist al aplicației stochează informațiile despre versiunea curentă a aplicației și accesând mainBundle
folosind kCFBundleVersionKey
, versiunea aplicației va fi returnată.
Apoi vom înregistra datele colectate.
NSString * deviceSpecs = [NSString stringWithFormat: @ "% @ -% @ -% @ -% @ -% @", model, sistemVersion, limbă, țară, appVersion]; NSLog (@ "Specificații dispozitiv ->% @", deviceSpecs);
În acest exemplu, fiecare piesă de informații este împachetată într-un șir care va fi afișat în consolă. În practică, poate doriți să o afișați în linia de subiect sau într-un e-mail de feedback.
Când este corespunzător cu utilizatorii de aplicații, este mai bine să știți mai multe despre dispozitiv dacă aveți nevoie de soluții. Utilizatorii au adesea dificultăți în a-și articula scenariul cu care au probleme. Cunoscând mai multe despre dispozitivul dvs., veți fi mai în măsură să îi ajutați cu problema, oferind în cele din urmă servicii mai bune și generând utilizatori mai fericiți. Accesul la datele dispozitivului este, de asemenea, util pentru crearea interacțiunilor personalizate adaptate în cadrul aplicației dvs. Întrebări sau comentarii? Lăsați-le în secțiunea de comentarii de mai jos sau mesaj pe Twitter @ aaron_crabtree.