Xcode 9 kullanırken, derleyici bazı uyarılar vardır This function declaration is not a prototype
. Onu void
çözecek olan yöntem gövdesine eklemeyi önerir . Karşılaştığım sorun, bu uyarıların sistem API'leri gibi UIApplication
temsilci yöntemleri için de atılması :
- (void)application:(UIApplication *)application
handleActionWithIdentifier:(NSString *)identifier
forRemoteNotification:(NSDictionary *)userInfo
withResponseInfo:(NSDictionary *)responseInfo
completionHandler:(void (^)())completionHandler
Bu, aşağıdakilerle çözülebilir:
- (void)application:(UIApplication *)application
handleActionWithIdentifier:(NSString *)identifier
forRemoteNotification:(NSDictionary *)userInfo
withResponseInfo:(NSDictionary *)responseInfo
completionHandler:(void (^)(void))completionHandler
Şimdi, temsilci yöntemlerinin uzun vadede hala çalışıp çalışmayacağını veya Apple'ın void
daha sonraki iOS 11 Beta sürümlerine ekleyip eklemeyeceğini merak ediyorum . Merak ediyorum, çünkü eğer void
gövdeyi dahil edersem , Xcode yöntem seçicilerinin uyumsuzluğundan şikayet edecek (bu mantıklı). Birisi şimdiye kadar aynı sorunu yaşadı mı?