2014-09-11 1 views
8

По-видимому, iOS8 по умолчанию добавляет активность «iCloud Photo Sharing» к представлениям активности в iOS8, и я не нашел никакой полезной документации по этому поводу, особенно о том, как явно удалить ее (перейдя в Опция «Больше» позволяет пользователю переключать отображение/скрытие, но для нашего приложения мы хотим полностью запретить эту опцию).iOS 8 - отключить iCloud Photo Sharing Activity

Неужели кто-нибудь понял, как отключить это? Любой вход был бы оценен. Благодаря!

Activity VC with unwanted "iCloud Photo Sharing" option

"More" option with user-performed manual enable/disable

+0

FYI - Я хотел бы удалить «iCloud Photo Sharing». Я попытался добавить следующие строковые значения, но никто из них не работал. "com.apple.UIKit.activity.iCloudPhotoSharing", "com.apple.UIKit.activity.PhotoSharing", "com.apple.UIKit.activity.ICloudPhotoSharing", "com.apple.UIKit.activity.iCloud", "com .apple.UIKit.activity.iCloudPhoto "," com.apple.UIKit.activity.iCloudSharing "," iCloudPhotoSharing ". – rmaddy

+0

'activityType' является' @ "com.apple.mobileslideshow.StreamShareService". Однако при добавлении в список исключений ничего не происходит. – OrangeDog

+0

** Легко сделано здесь ** ... http://stackoverflow.com/a/37217699/294884 – Fattie

ответ

2

Обычно вы установите excludedActivityTypes свойство на вашем UIActivityViewController например - например, исключить размещение на Facebook, вы бы поставил UIActivityTypePostToFacebook в этом массиве.

Но это не выглядит так: список Built-in Activity Types (либо в документации, либо в UIActiviy.h) содержит константу для фотографий iCloud. Вероятно, это стоит filing a bug.

+0

легко сделать ... http://stackoverflow.com/a/37217699/294884 – Fattie

6

Если вы активируете свой UIActivityViewController с полным количеством изображений, по умолчанию используется общий доступ iCloud к типам операций. Вы можете добавить строку в свой массив activityItems. Этот шаг приведет к тому, что разделение iCloud будет удалено из activityTypes.

NSArray *Items = [NSArray arrayWithObjects: image1, image2, @"", nil]; 
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:Items applicationActivities:nil]; 
+0

Мягко взломанное решение, но оно работает. Это особенно важно, если вы используете 'UIActivityItemSource' и хотите, чтобы операции типа изображения отображались в –

+1

. Затем нужно исключить' UIActivityTypeCopyToPasteboard', поскольку это просто скопирует пустую строку. – OrangeDog

+0

Вы можете сохранить функциональность картона, если вы замените пустой элемент активности строки на пользовательский UIActivityItemProvider, который возвращает элемент nil и имеет пустую строку в качестве элемента-заполнителя. –

 Смежные вопросы

  • Нет связанных вопросов^_^