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 UIApplicationtemsilci 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 voiddaha sonraki iOS 11 Beta sürümlerine ekleyip eklemeyeceğini merak ediyorum . Merak ediyorum, çünkü eğer voidgövdeyi dahil edersem , Xcode yöntem seçicilerinin uyumsuzluğundan şikayet edecek (bu mantıklı). Birisi şimdiye kadar aynı sorunu yaşadı mı?
