Кордова, как удалить "Push-уведомление" на iOS
Я отправил свое приложение с помощью Apache Cordova в Apple Store, и у меня появилось предупреждение от Apple, что "Отсутствие права на уведомление Push Push".
Но, похоже, я никогда не использовал "Push Notification" в своем приложении. Как я могу удалить его из своего приложения? Это по умолчанию в Apache Cordova?
Ответы
Ответ 1
КАК ДЕЛАТЬ ЭТО ДЛЯ КОРДОВЫХ ПРИЛОЖЕНИЙ:
У меня также была эта проблема. Решение, предложенное @michaelb, работало, но я был достаточно расстроен, увидев, что все это было завернуто в условную компиляцию (т.е. #ifndef DISABLE_PUSH_NOTIFICATIONS
), что я решил научиться добавлять "Макропроцессорный макрос", который в основном говорит XCode для компиляции вашего приложения с этим недостатком кода.
Таким образом, вы можете определить символ прекомпиляции DISABLE_PUSH_NOTIFICATIONS
графически через пользовательский интерфейс (обратите внимание, что это так сделано в XCode 6.1):
![введите описание изображения здесь]()
Надеюсь, что это поможет другим людям в той же ситуации.
Ответ 2
В AppDelegate.m удалить didRegisterForRemoteNotificationsWithDeviceToken и didFailToRegisterForRemoteNotificationsWithError. Работа с PhoneGap 3.5
Ответ 3
Следуя рекомендациям выше и в других местах, это то, что я сделал в Cordova 5.0.0
В результате предупреждение исчезло, и я не заметил никаких проблем с приложением.
- Открытые платформы/ios/InfoganGardenAdmin/Классы/AppDelegate.m
- Вывод строки из от 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
*/
Ответ 4
Скорее всего, проблема с используемой вами версией, PhoneGap 3.5 имеет ту же самую проблему (PhoneGap построен на Кордове), вы можете просмотреть дискуссионную тему здесь
Текущее решение, похоже, "использует более старую версию"
Ответ 5
Письмо довольно расплывчато и может быть использовано несколькими способами, и если вы новый разработчик, вы, возможно, не знали о времени ожидания обзоров приложений Apple Store. См. AppReviewTimes.
Чтобы уточнить: это просто предупреждение, и вы можете игнорировать его, если вы не используете push-уведомления.
Не пытайтесь исправить то, что не сломалось. Плюс все решения, которые я мог найти, не сработали.