Cordova как удалить "Push-уведомление" на iOS
Я отправил свое приложение с помощью Apache Cordova в Apple Store, и я получил предупреждение от apple, что "отсутствует право на Push-уведомление".
но кажется, что я никогда не использовал "Push-уведомление" в своем приложении. Как удалить его из приложения? Это по умолчанию в Apache Cordova?
5 ответов
КАК ЭТО СДЕЛАТЬ ДЛЯ CORDOVA ПРИЛОЖЕНИЙ "ПРАВИЛЬНО":
у меня также была эта проблема. Решение, предложенное @michaelb, работало, но я был разочарован, видя, что все это было завернуто в условную компиляцию (т. е. #ifndef DISABLE_PUSH_NOTIFICATIONS
), что я решил узнать, как добавить "макрос препроцессора", который в основном говорит XCode скомпилировать приложение с этим битом кода.
вот как вы можете определить DISABLE_PUSH_NOTIFICATIONS
символ предварительной компиляции графически через пользовательский интерфейс (обратите внимание, что это так, как это сделано в XCode 6.1):
надеюсь, что это поможет другим людям в той же ситуации.
В AppDelegate.M удалить didRegisterForRemoteNotificationswithdevicetoken и didFailToRegisterForRemoteNotificationswitherror. Работа на PhoneGap 3.5
следуя советам выше и в других местах, это то, что я сделал в Cordova 5.0.0
в результате предупреждение исчезло, и я не заметил никаких проблем с приложением.
- открытые платформы / ios/InfoganGardenAdmin/классы / AppDelegate.м
- прокомментируйте строку 116 до 137
пример:
/* - Removed to disable push notification and Apple warning message
#ifndef DISABLE_PUSH_NOTIFICATIONS
- (void) application:(UIApplication*)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
// re-post ( broadcast )
NSString* token = [[[[deviceToken description]
stringByReplacingOccurrencesOfString:@"<" withString:@""]
stringByReplacingOccurrencesOfString:@">" withString:@""]
stringByReplacingOccurrencesOfString:@" " withString:@""];
[[NSNotificationCenter defaultCenter] postNotificationName:CDVRemoteNotification object:token];
}
- (void) application:(UIApplication*)application
didFailToRegisterForRemoteNotificationsWithError:(NSError*)error
{
// re-post ( broadcast )
[[NSNotificationCenter defaultCenter] postNotificationName:CDVRemoteNotificationError object:error];
}
#endif
*/
Это, скорее всего, проблема с версией, которую вы используете, PhoneGap 3.5 имеет ту же проблему (PhoneGap построен на Cordova), вы можете просмотреть поток обсуждения здесь
текущее решение кажется "использовать старую версию"
письмо довольно расплывчато и может быть принято несколькими способами плюс, если вы новый разработчик, вы, возможно, не знали о времени ожидания для Apple Store App отзывы. См.AppReviewTimes.
уточню: это просто предупреждение, и вы можете игнорировать его, если вы не используете push-уведомления.
Не пытайтесь исправить то, что не сломано. Плюс все решения, которые я смог найти не работают.