تحقق مما إذا كان المستخدم يسمح للتطبيق باستخدام موقعه

StackOverflow https://stackoverflow.com/questions/1905189

سؤال

في المرة الأولى التي يحاول فيها التطبيق الحصول على موقع المستخدمين، تتم مطالبتهم ب "ترغب في استخدام موقعك الحالي"، ويمكنهم الوصول إلى عدم السماح أو موافق. هل هناك أي طريقة لمعرفة ما إذا كان المستخدم قد ضرب موافق أو لا تسمح؟ أحاول أن أحصل على MKMapView أظهر للمستخدمين الموقع الحالي ولكني أرغب في اتخاذ إجراءات مختلفة بناء على اختيار المستخدمين.

عادة ما تعتقد أنه سيكون هناك مندوب للحصول على هذه المعلومات ولكن لا يبدو أن هناك.

شكرا مقدما لمساعدتكم.

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

المحلول

ستفشل مكالبتك الأولى للحصول على موقع المستخدم بخطأ يخبرك بأن المستخدم قد نفى خدمات الموقع. لك CLLocationManagerDelegate طريقة didFailWithError سيتم استدعاء، على النحو التالي. (يتم تعريف الثوابت في CLError.h)

- (void)locationManager:(CLLocationManager*)aManager didFailWithError:(NSError*)anError
{
    switch([anError code])
    {
    case kCLErrorLocationUnknown: // location is currently unknown, but CL will keep trying
    break;

    case kCLErrorDenied: // CL access has been denied (eg, user declined location use)
    message = @"Sorry, flook has to know your location in order to work. You'll be able to see some cards but not find them nearby";
    break;

    case kCLErrorNetwork: // general, network-related error
    message = @"Flook can't find you - please check your network connection or that you are not in airplane mode";
    }
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top