Objective-C ile IOS üzerinde push bildirimleri /

deargod

Üye
26 Ocak 2019
168
0
vice city
İos üzerinde Objective-C ile bildirim oluşturma


Bu kodlar ile AppDelegate dosyanızdaki UserNotifications.framework dosyasını içe aktarın:
Kod:
[COLOR="DarkOliveGreen"]#import <UserNotifications/UserNotifications.h>[/COLOR]
Daha sonrada bu kodu yazın:
Kod:
[COLOR="DarkOliveGreen"][CENTER]#import <UserNotifications/UserNotifications.h>
  [USER=64682]INTERFACE[/USER] AppDelegate : UIResponder <UIApplicationDelegate,UNUserNotificationCenterDelegate>
 
  [USER=22515]end[/USER][/CENTER][/COLOR]

Daha sonra IOS sürüm kontrolü ayarlarını düzenleyeceğiz.Bunları yaparken IOS sürümüne göre yapın.Ben burda IOS 10 üzerinden yazacam

Kod:
#define SYSTEM_VERSION_GRATERTHAN_OR_EQUALTO(v)  ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)

Kod:
[CENTER][COLOR="DarkOliveGreen"]-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
    [self registerForRemoteNotifications];
    return YES;
}
 
- (****)registerForRemoteNotifications {
    if(SYSTEM_VERSION_GRATERTHAN_OR_EQUALTO(@"10.0")){
        UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
        center.delegate = self;
        [center requestAuthorizationWithOptions:(UNAuthorizationOptionSound | UNAuthorizationOptionAlert | UNAuthorizationOptionBadge) completionHandler:^(BOOL granted, NSError * _Nullable error){
             if(!error){
                 [[UIApplication sharedApplication] registerForRemoteNotifications];
             }
         }];  
    }
    else {
        // Code for old versions
    }
}
[/COLOR][/CENTER]

Bildirim Kodunu Kendimize Göre Düzenleme:

Kod:
[CENTER][COLOR="DarkOliveGreen"]//Sadece uyarı bildirim çağrıldığında.
-(****)userNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(**** (^)(UNNotificationPresentationOptions options))completionHandler{
    NSLog(@"User Info : %@",notification.request.content.userInfo);
    completionHandler(UNAuthorizationOptionSound | UNAuthorizationOptionAlert | UNAuthorizationOptionBadge);
}
 
//Sizin kendinize göre düzenlediğiniz bildirim.
-(****)userNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(****(^)())completionHandler{
    NSLog(@"User Info : %@",response.notification.request.content.userInfo);
    completionHandler();
}[/COLOR][/CENTER]


Son olarak bildirimler için yetki ekleme:

V9JL7v.jpg
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.