উত্তর:
enabledRemoteNotificationsTypes
মুখোশটি কল করুন এবং চেক করুন।
উদাহরণ স্বরূপ:
UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
if (types == UIRemoteNotificationTypeNone)
// blah blah blah
iOS8 এবং তারপরের:
[[UIApplication sharedApplication] isRegisteredForRemoteNotifications]
iOS 8
এবং উচ্চতরটি ভুল কারণ এটি ব্যবহারকারী কেবল দূরবর্তী বিজ্ঞপ্তির জন্য নিবন্ধিত হলেই এটি পরীক্ষা করে। ডকুমেন্টেশন অনুযায়ী:This method reflects only the successful completion of the remote registration process that begins when you call the registerForRemoteNotifications method. This method does not reflect whether remote notifications are actually available due to connectivity issues. The value returned by this method takes into account the user’s preferences for receiving remote notifications.
[[UIApplication sharedApplication] currentUserNotificationSettings];
কোয়ান্টাম্পোটোটোর ইস্যু:
যেখানে types
দেওয়া হয়
UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
এক ব্যবহার করতে পারেন
if (types & UIRemoteNotificationTypeAlert)
পরিবর্তে
if (types == UIRemoteNotificationTypeNone)
আপনাকে কেবল বিজ্ঞপ্তি সক্ষম আছে কিনা তা পরীক্ষা করার অনুমতি দেবে (এবং শব্দ, ব্যাজ, বিজ্ঞপ্তি কেন্দ্র ইত্যাদি সম্পর্কে চিন্তা করবেন না)। "সতর্কতা স্টাইল" "ব্যানার" বা "সতর্কতা " এ সেট করা থাকলে এবং অন্যান্য সেটিংস নির্বিশেষে "সতর্কতা শৈলী" "কিছুই নয়" তে সেট করা থাকলে কোডের প্রথম লাইনটি ( types & UIRemoteNotificationTypeAlert
) ফিরে আসবে ।YES
NO
grantedSettings.types.contains(notificationType)
আইওএসের সর্বশেষতম সংস্করণে এই পদ্ধতিটি এখন অবচয় করা হয়েছে। আইওএস 7 এবং আইওএস 8 ব্যবহার উভয়কে সমর্থন করতে:
UIApplication *application = [UIApplication sharedApplication];
BOOL enabled;
// Try to use the newer isRegisteredForRemoteNotifications otherwise use the enabledRemoteNotificationTypes.
if ([application respondsToSelector:@selector(isRegisteredForRemoteNotifications)])
{
enabled = [application isRegisteredForRemoteNotifications];
}
else
{
UIRemoteNotificationType types = [application enabledRemoteNotificationTypes];
enabled = types & UIRemoteNotificationTypeAlert;
}
UserNotifications
। দুর্ভাগ্যক্রমে আমার কাছে এখন পুরো উত্তর নেই।
Swift4.0, iOS11 এর জন্য আপডেট হওয়া কোড
import UserNotifications
UNUserNotificationCenter.current().getNotificationSettings { (settings) in
print("Notification settings: \(settings)")
guard settings.authorizationStatus == .authorized else { return }
//Not authorised
UIApplication.shared.registerForRemoteNotifications()
}
Swift3.0, iOS10 এর জন্য কোড
let isRegisteredForRemoteNotifications = UIApplication.shared.isRegisteredForRemoteNotifications
if isRegisteredForRemoteNotifications {
// User is registered for notification
} else {
// Show alert user is not registered for notification
}
আইওএস 9 থেকে, সুইফট ২.০ ইউআইরিমোটনোটিকেশন টাইপটি অবচিত করা হয়েছে, নিম্নলিখিত কোড ব্যবহার করুন
let notificationType = UIApplication.shared.currentUserNotificationSettings!.types
if notificationType == UIUserNotificationType.none {
// Push notifications are disabled in setting by user.
}else{
// Push notifications are enabled in setting by user.
}
কেবল পুশ বিজ্ঞপ্তিগুলি সক্ষম কিনা তা পরীক্ষা করে দেখুন
if notificationType == UIUserNotificationType.badge {
// the application may badge its icon upon a notification being received
}
if notificationType == UIUserNotificationType.sound {
// the application may play a sound upon a notification being received
}
if notificationType == UIUserNotificationType.alert {
// the application may display an alert upon a notification being received
}
নীচে আপনি iOS8 এবং iOS7 (এবং নিম্ন সংস্করণ) উভয়কে কভার করে এমন একটি সম্পূর্ণ উদাহরণ পাবেন। দয়া করে নোট করুন যে iOS8 এর পূর্বে আপনি "রিমোট নোটিফিকেশনগুলি অক্ষম" এবং "কেবলমাত্র লকস্ক্রিনে সক্ষম হওয়া সক্ষম" এর মধ্যে পার্থক্য করতে পারবেন না ।
BOOL remoteNotificationsEnabled = false, noneEnabled,alertsEnabled, badgesEnabled, soundsEnabled;
if ([[UIApplication sharedApplication] respondsToSelector:@selector(registerUserNotificationSettings:)]) {
// iOS8+
remoteNotificationsEnabled = [UIApplication sharedApplication].isRegisteredForRemoteNotifications;
UIUserNotificationSettings *userNotificationSettings = [UIApplication sharedApplication].currentUserNotificationSettings;
noneEnabled = userNotificationSettings.types == UIUserNotificationTypeNone;
alertsEnabled = userNotificationSettings.types & UIUserNotificationTypeAlert;
badgesEnabled = userNotificationSettings.types & UIUserNotificationTypeBadge;
soundsEnabled = userNotificationSettings.types & UIUserNotificationTypeSound;
} else {
// iOS7 and below
UIRemoteNotificationType enabledRemoteNotificationTypes = [UIApplication sharedApplication].enabledRemoteNotificationTypes;
noneEnabled = enabledRemoteNotificationTypes == UIRemoteNotificationTypeNone;
alertsEnabled = enabledRemoteNotificationTypes & UIRemoteNotificationTypeAlert;
badgesEnabled = enabledRemoteNotificationTypes & UIRemoteNotificationTypeBadge;
soundsEnabled = enabledRemoteNotificationTypes & UIRemoteNotificationTypeSound;
}
if ([[UIApplication sharedApplication] respondsToSelector:@selector(registerUserNotificationSettings:)]) {
NSLog(@"Remote notifications enabled: %@", remoteNotificationsEnabled ? @"YES" : @"NO");
}
NSLog(@"Notification type status:");
NSLog(@" None: %@", noneEnabled ? @"enabled" : @"disabled");
NSLog(@" Alerts: %@", alertsEnabled ? @"enabled" : @"disabled");
NSLog(@" Badges: %@", badgesEnabled ? @"enabled" : @"disabled");
NSLog(@" Sounds: %@", soundsEnabled ? @"enabled" : @"disabled");
সুইফট 3+
if #available(iOS 10.0, *) {
UNUserNotificationCenter.current().getNotificationSettings(completionHandler: { (settings: UNNotificationSettings) in
// settings.authorizationStatus == .authorized
})
} else {
return UIApplication.shared.currentUserNotificationSettings?.types.contains(UIUserNotificationType.alert) ?? false
}
আইওএস 10 + এর জন্য আরএক্সউইফট পর্যবেক্ষণযোগ্য সংস্করণ:
import UserNotifications
extension UNUserNotificationCenter {
static var isAuthorized: Observable<Bool> {
return Observable.create { observer in
DispatchQueue.main.async {
current().getNotificationSettings(completionHandler: { (settings: UNNotificationSettings) in
if settings.authorizationStatus == .authorized {
observer.onNext(true)
observer.onCompleted()
} else {
current().requestAuthorization(options: [.badge, .alert, .sound]) { (granted, error) in
observer.onNext(granted)
observer.onCompleted()
}
}
})
}
return Disposables.create()
}
}
}
getNotificationSettings(...)
আইওএস 8 এবং নিম্ন উভয়কেই সমর্থন করার চেষ্টা করার ক্ষেত্রে isRegisteredForRemoteNotifications
কেভিনের পরামর্শ মতো আমার বেশি ভাগ্য হয়নি । পরিবর্তে আমি ব্যবহার করেছি currentUserNotificationSettings
, যা আমার পরীক্ষায় দুর্দান্ত কাজ করেছে।
+ (BOOL)notificationServicesEnabled {
BOOL isEnabled = NO;
if ([[UIApplication sharedApplication] respondsToSelector:@selector(currentUserNotificationSettings)]){
UIUserNotificationSettings *notificationSettings = [[UIApplication sharedApplication] currentUserNotificationSettings];
if (!notificationSettings || (notificationSettings.types == UIUserNotificationTypeNone)) {
isEnabled = NO;
} else {
isEnabled = YES;
}
} else {
UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
if (types & UIRemoteNotificationTypeAlert) {
isEnabled = YES;
} else{
isEnabled = NO;
}
}
return isEnabled;
}
isEnabled = NO;
আপনার if
ক্ষেত্রে এটি যেমন প্রয়োজন হয় তেমন প্রয়োজন হয় নাNO
দুর্ভাগ্যক্রমে এই প্রদত্ত সমাধানগুলির কোনওটিই সত্যিই সমস্যার সমাধান করতে পারে না কারণ প্রাসঙ্গিক তথ্য সরবরাহ করার ক্ষেত্রে এপিআইগুলির গুরুতর অভাব হয়। তবে আপনি কয়েকটি অনুমান করতে পারেন currentUserNotificationSettings
(আইওএস 8 +) ব্যবহার করে প্রশ্নের উত্তরটি দেওয়ার জন্য এটি কেবল বর্তমান আকারে যথেষ্ট নয়। যদিও এখানে অনেকগুলি সমাধান মনে হয় যে এটি হয় বা isRegisteredForRemoteNotifications
এটির একটি নির্দিষ্ট উত্তর এটি সত্যই নয়।
এই বিবেচনা:
সঙ্গে isRegisteredForRemoteNotifications
ডকুমেন্টেশন পদ বলে:
অ্যাপ্লিকেশনটি বর্তমানে সিস্টেমভিত্তিক যে কোনও সেটিংস বিবেচনায় নিয়ে দূরবর্তী বিজ্ঞপ্তির জন্য নিবন্ধিত থাকলে হ্যাঁ প্রত্যাবর্তন করে ...
তবে আপনি যদি NSLog
আচরণটি পর্যালোচনা করার জন্য যদি আপনার অ্যাপের প্রতিনিধিটির কাছে কোনও সহজভাবে ফেলে দেন তবে এটি পরিষ্কার হয়ে যায় যে এটি আমাদের প্রত্যাশা করে যেভাবে কাজ করবে তা আচরণ করে না। এটি আসলে এই অ্যাপ / ডিভাইসের জন্য সক্রিয় করা দূরবর্তী বিজ্ঞপ্তিগুলির সাথে সরাসরি সম্পর্কিত। একবার প্রথমবার সক্রিয় হয়ে গেলে এটি সর্বদা ফিরে আসবে YES
। এমনকি সেটিংসে (বিজ্ঞপ্তিগুলি) এগুলি বন্ধ করে দেওয়ার ফলে এটি পুনরায় ফিরে আসার YES
কারণ হবে কারণ আইওএস 8 হিসাবে, কোনও অ্যাপ্লিকেশন দূরবর্তী বিজ্ঞপ্তিগুলির জন্য নিবন্ধন করতে পারে এবং এমনকি ব্যবহারকারীকে বিজ্ঞপ্তি সক্ষম না করে এমন কোনও ডিভাইসে প্রেরণ করতে পারে, তারা কেবল সতর্কতাগুলি না করে, ব্যাজগুলি এবং সাউন্ডটি ব্যবহারকারী চালু না করেই করে। নীরব বিজ্ঞপ্তি এমন কিছুর একটি ভাল উদাহরণ যা আপনি বিজ্ঞপ্তি বন্ধ করে দিয়েও চালিয়ে যেতে পারেন।
যতদূর currentUserNotificationSettings
এটি চারটি জিনিসের একটিকে নির্দেশ করে:
সতর্কতাগুলি ব্যাজে রয়েছে সাউন্ড চলছে কোনওটি চলছে না।
এটি আপনাকে অন্যান্য কারণ বা নোটিফিকেশন স্যুইচ সম্পর্কে নিজেই কোনও ইঙ্গিত দেয় না।
কোনও ব্যবহারকারী আসলে ব্যাজ, শব্দ এবং সতর্কতাগুলি বন্ধ করতে পারে তবে এখনও লকস্ক্রিনে বা বিজ্ঞপ্তি কেন্দ্রে প্রদর্শন করতে পারে। এই ব্যবহারকারীর এখনও পুশ বিজ্ঞপ্তিগুলি গ্রহণ করা উচিত এবং লক স্ক্রিনে এবং বিজ্ঞপ্তি কেন্দ্রে সেগুলি উভয়ই দেখতে সক্ষম হওয়া উচিত। তাদের বিজ্ঞপ্তি স্যুইচ আছে। currentUserNotificationSettings
তবে ফিরে আসবে: সেক্ষেত্রে UIUserNotificationTypeNone
। এটি ব্যবহারকারীদের প্রকৃত সেটিংসের সত্যই নির্দেশক নয়।
কেউ কিছু অনুমান করতে পারেন:
isRegisteredForRemoteNotifications
তা হয় NO
তবে আপনি ধরে নিতে পারেন যে এই ডিভাইসটি রিমোট নোটিফিকেশনের জন্য সফলভাবে নিবন্ধিত হয়নি।application:didRegisterUserNotificationSettings:
এই সময়ে ব্যবহারকারী বিজ্ঞপ্তি সেটিংস ধারণকারী যেহেতু এই প্রথমবার ব্যবহারকারী সেটিংস নিবন্ধিত হয়েছে তৈরি করা হয় উচিত ইঙ্গিত কি ব্যবহারকারী অনুমতির অনুরোধ পরিপ্রেক্ষিতে নির্বাচন করেছেন। সেটিংসটি যদি অন্য কোনও কিছুর সমতুল্য হয়: UIUserNotificationTypeNone
তবে পুশ অনুমতি দেওয়া হয়েছিল, অন্যথায় এটি অস্বীকার করা হয়েছিল। এর কারণ হ'ল আপনি দূরবর্তী নিবন্ধকরণ প্রক্রিয়া শুরু করার মুহুর্ত থেকে ব্যবহারকারী কেবল নিবন্ধকরণ প্রক্রিয়া চলাকালীন সেটিংস সেটিংস হ'ল গ্রহণযোগ্যতার প্রাথমিক সেটিংসের সাথে কেবল গ্রহণযোগ্যতা বা প্রত্যাখ্যান করার ক্ষমতা রাখে।উত্তরটি সম্পূর্ণ করতে, এটি এমন কিছু কাজ করতে পারে ...
UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
switch (types) {
case UIRemoteNotificationTypeAlert:
case UIRemoteNotificationTypeBadge:
// For enabled code
break;
case UIRemoteNotificationTypeSound:
case UIRemoteNotificationTypeNone:
default:
// For disabled code
break;
}
সম্পাদনা: এটি সঠিক নয়। যেহেতু এগুলি বিট-ওয়াইফ স্টাফ, এটি একটি স্যুইচ দিয়ে কাজ করবে না, তাই আমি এটি ব্যবহার করে শেষ করেছি:
UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
UIRemoteNotificationType typesset = (UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge);
if((types & typesset) == typesset)
{
CeldaSwitch.chkSwitch.on = true;
}
else
{
CeldaSwitch.chkSwitch.on = false;
}
IOS7 এর জন্য এবং আপনার অবশ্যই ব্যবহার করা উচিত enabledRemoteNotificationTypes
এবং এটি পরীক্ষা করা উচিত কিনা এটি সমান (বা আপনি যা চান তার উপর ভিত্তি করে সমান হয় না) UIRemoteNotificationTypeNone
।
তবে আইওএস 8-র ক্ষেত্রে এটি কেবলমাত্র উপরের মতো অনেকগুলি রাজ্যের সাথে চেক করা সর্বদা যথেষ্ট নয়isRegisteredForRemoteNotifications
। application.currentUserNotificationSettings.types
আপনারও সমান (বা আপনি যা চান তার উপর ভিত্তি করে সমান হয় না) তাও পরীক্ষা করা উচিত UIUserNotificationTypeNone
!
isRegisteredForRemoteNotifications
currentUserNotificationSettings.types
রিটার্ন হলেও সত্য হতে পারে UIUserNotificationTypeNone
।
iOS8 + (OBJECTIVE C)
#import <UserNotifications/UserNotifications.h>
[[UNUserNotificationCenter currentNotificationCenter]getNotificationSettingsWithCompletionHandler:^(UNNotificationSettings * _Nonnull settings) {
switch (settings.authorizationStatus) {
case UNAuthorizationStatusNotDetermined:{
break;
}
case UNAuthorizationStatusDenied:{
break;
}
case UNAuthorizationStatusAuthorized:{
break;
}
default:
break;
}
}];
UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
if (types & UIRemoteNotificationTypeAlert)
// blah blah blah
{
NSLog(@"Notification Enabled");
}
else
{
NSLog(@"Notification not enabled");
}
এখানে আমরা ইউআইআইএপ্লিকেশন থেকে ইউআইআরমোটনোটিকেশন টাইপ পাই। এটি সেটিং-এ এই অ্যাপ্লিকেশনটির পুশ বিজ্ঞপ্তির অবস্থা উপস্থাপন করে, আপনি সহজেই এর ধরণটি সহজে পরীক্ষা করতে পারেন check
আমি আইওএস 10 এবং সমাধান @Shaheen Ghiassy দ্বারা প্রদান কিন্তু বঞ্চনা ইস্যু খুঁজে ব্যবহার করে উপরে উল্লেখিত সমর্থন করার জন্য চেষ্টা enabledRemoteNotificationTypes
। সুতরাং, আমি যে সমাধানটি আইওএস-এ অবমুক্ত করা হয়েছে isRegisteredForRemoteNotifications
তার পরিবর্তে ব্যবহার করে enabledRemoteNotificationTypes
সন্ধান করব Bel নীচে আমার আপডেট সমাধানটি যা আমার পক্ষে নিখুঁতভাবে কাজ করেছে:
- (BOOL)notificationServicesEnabled {
BOOL isEnabled = NO;
if ([[UIApplication sharedApplication] respondsToSelector:@selector(currentUserNotificationSettings)]){
UIUserNotificationSettings *notificationSettings = [[UIApplication sharedApplication] currentUserNotificationSettings];
if (!notificationSettings || (notificationSettings.types == UIUserNotificationTypeNone)) {
isEnabled = NO;
} else {
isEnabled = YES;
}
} else {
if ([[UIApplication sharedApplication] isRegisteredForRemoteNotifications]) {
isEnabled = YES;
} else{
isEnabled = NO;
}
}
return isEnabled;
}
এবং আমরা সহজেই এই ফাংশনটি কল করতে পারি এবং এর Bool
মানটি অ্যাক্সেস করতে পারি এবং এটির মাধ্যমে স্ট্রিং ভ্যালুতে রূপান্তর করতে পারি:
NSString *str = [self notificationServicesEnabled] ? @"YES" : @"NO";
আশা করি এটি অন্যকেও সহায়তা করবে :) শুভ কোডিং।
আইওএস 7 পর্যন্ত জ্যাকের উত্তর পুরোপুরি সঠিক হলেও আইওএস 8 আসার পর থেকে এটি বদলে গেছে। কারণ সক্ষমযুক্ত রিমোটনোটিকেশন টাইপগুলি আইওএস 8 এর পরে অবচয় করা হয়েছে। আইওএস 8 এবং তারপরে আপনার রেজিস্টার্ড ফর রেমোটনোটিকেশন ব্যবহার করতে হবে ।
এই সুইফটি সমাধানটি আমার জন্য ভাল কাজ করেছে ( iOS8 + ),
পদ্ধতি :
func isNotificationEnabled(completion:@escaping (_ enabled:Bool)->()){
if #available(iOS 10.0, *) {
UNUserNotificationCenter.current().getNotificationSettings(completionHandler: { (settings: UNNotificationSettings) in
let status = (settings.authorizationStatus == .authorized)
completion(status)
})
} else {
if let status = UIApplication.shared.currentUserNotificationSettings?.types{
let status = status.rawValue != UIUserNotificationType(rawValue: 0).rawValue
completion(status)
}else{
completion(false)
}
}
}
ব্যবহার :
isNotificationEnabled { (isEnabled) in
if isEnabled{
print("Push notification enabled")
}else{
print("Push notification not enabled")
}
}
Re:
এটা সঠিক
if (types & UIRemoteNotificationTypeAlert)
কিন্তু নিম্নলিখিতটিও সঠিক! (ইউআইআরএমোটনোটিকেশন টাইপনোন 0 হিসাবে রয়েছে)
if (types == UIRemoteNotificationTypeNone)
নিম্নলিখিত দেখুন
NSLog(@"log:%d",0 & 0); ///false
NSLog(@"log:%d",1 & 1); ///true
NSLog(@"log:%d",1<<1 & 1<<1); ///true
NSLog(@"log:%d",1<<2 & 1<<2); ///true
NSLog(@"log:%d",(0 & 0) && YES); ///false
NSLog(@"log:%d",(1 & 1) && YES); ///true
NSLog(@"log:%d",(1<<1 & 1<<1) && YES); ///true
NSLog(@"log:%d",(1<<2 & 1<<2) && YES); ///true
Xamarin.ios এ এটি কীভাবে করবেন তা এখানে।
public class NotificationUtils
{
public static bool AreNotificationsEnabled ()
{
var settings = UIApplication.SharedApplication.CurrentUserNotificationSettings;
var types = settings.Types;
return types != UIUserNotificationType.None;
}
}
আপনি যদি আইওএস 10+ সমর্থন করেন তবে কেবল ইউএনউজারনোটফিকেশন সেন্টার পদ্ধতিতে যান।
জামারিনে উপরের সমস্ত সমাধান আমার পক্ষে কাজ করে না। পরিবর্তে এটিই আমি ব্যবহার করি:
public static bool IsRemoteNotificationsEnabled() {
return UIApplication.SharedApplication.CurrentUserNotificationSettings.Types != UIUserNotificationType.None;
}
আপনি সেটিংসে বিজ্ঞপ্তি স্থিতি পরিবর্তন করার পরে এটি একটি সরাসরি আপডেটও পাচ্ছে।
@ জ্যাকবাউলিংয়ের সমাধান ( https://stackoverflow.com/a/1535427/2298002 ) থেকে তৈরি সম্পূর্ণ সহজ অনুলিপি এবং পেস্ট কোড
এটি ব্যবহারকারীকে আপনার অ্যাপ্লিকেশন সেটিংসে নিয়ে আসবে এবং তাদের তাত্ক্ষণিকভাবে সক্ষম করার অনুমতি দেবে
আমি অবস্থান পরিষেবাদি সক্ষম করা আছে কিনা তা যাচাই করার জন্য একটি সমাধানে যোগ করেছি (এবং সেটিংসেও এনেছে)
// check if notification service is enabled
+ (void)checkNotificationServicesEnabled
{
if (![[UIApplication sharedApplication] isRegisteredForRemoteNotifications])
{
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Notification Services Disabled!"
message:@"Yo don't mess around bro! Enabling your Notifications allows you to receive important updates"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Settings", nil];
alertView.tag = 300;
[alertView show];
return;
}
}
// check if location service is enabled (ref: https://stackoverflow.com/a/35982887/2298002)
+ (void)checkLocationServicesEnabled
{
//Checking authorization status
if (![CLLocationManager locationServicesEnabled] || [CLLocationManager authorizationStatus] == kCLAuthorizationStatusDenied)
{
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Location Services Disabled!"
message:@"You need to enable your GPS location right now!!"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Settings", nil];
//TODO if user has not given permission to device
if (![CLLocationManager locationServicesEnabled])
{
alertView.tag = 100;
}
//TODO if user has not given permission to particular app
else
{
alertView.tag = 200;
}
[alertView show];
return;
}
}
// handle bringing user to settings for each
+ (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if(buttonIndex == 0)// Cancel button pressed
{
//TODO for cancel
}
else if(buttonIndex == 1)// Settings button pressed.
{
if (alertView.tag == 100)
{
//This will open ios devices location settings
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=LOCATION_SERVICES"]];
}
else if (alertView.tag == 200)
{
//This will open particular app location settings
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
}
else if (alertView.tag == 300)
{
//This will open particular app location settings
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
}
}
}
GLHF!