سؤال

في الأساس ، أحتاج إلى تحديد بلد المستخدم عند بدء تشغيل التطبيق وتمكين أو تعطيل ميزة تعتمد على الموقع في تطبيقي بناءً على بلده/بلدها. أحتاج إلى القيام بذلك في أسرع وقت ممكن في مندوب التطبيق قبل تحميل RootViewController. هل هناك على أي حال للقيام بذلك في iPhone SDK ؟؟

هل كانت مفيدة؟

المحلول

هل تحتاج إلى اسم البلد الذي يقع فيه الجهاز جسديًا أثناء تشغيل التطبيق؟

أو هل يمكنك القيام بموقع النظام الذي يستخدمه الجهاز مثل EN_US أو FR_CA؟

إذا كان الأخير ، يمكنك:

NSLocale *currentUsersLocale = [NSLocale currentLocale];  
NSString *currentLocaleID = [currentUsersLocale localeIdentifier];`

ثم currentLocaleID سوف يكون "en_US" أو "fr_CA" أو مشابه.

وإلا ستحتاج إلى استخدام Corelocation وشكل من أشكال الجيوكيوم العكسي لتحويل LAT/Long إلى اسم البلد.

يمكن لـ MKREVERSEGEOCODER القيام بذلك ، لكن شروط الخدمة تقول إنك بحاجة إلى القيام بذلك بالتزامن مع خريطة Google التي قد لا تناسبك. متوفر فقط على OS 3.0 وما فوق ، ابحث في الوثائق mkreversegeOcoder لمزيد من المعلومات.

كنت بحاجة إلى هذا بنفسي وانتهى بي الأمر بالتعبير الجغرافي في PHP على الخادم الخاص بنا ، باستخدام عنوان IP للجهاز. إنه بدائي ، لكنه أعطانا تفاصيل كافية لاحتياجاتنا.

تحقق من خدمة الويب هذه: http://ws.geonames.org/findnearby؟lat=47.3&lng=9
الذي يعيد مستند XML مع البلد وأسماء الأماكن القريبة التي تعطى زوج LAT/LNG.

يعتمد هذا النهج على الجهاز الذي يحتوي على اتصال بيانات نشط.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top