Это прекрасно работает
override fun itemExists() {
Observable.just(dao)
.subscribeOn(Schedulers.io())
.subscribeOn(AndroidSchedulers.mainThread())
.map { it -> it.exist(place.lat, place.lng) }
.subscribe( { it -> saveClicked(true) },
{error -> saveClicked(false)})
}
Вы могли бы хотеть проверить classdump частных заголовков платформы яблока. Запустите этот скрипт жемчуга:
http://arstechnica.com/apple/news/2008/11/dumping-the-iphone-2-2-frameworks.ars
и перейдите к каталогу PhotoLibrary под PrivateFrameworks. Некоторые классы в здесь выглядят довольно многообещающими для прямого доступа к камере.
Используя недокументированный API мог повредить Ваши возможности прохождения через App Store, но это все очень субъективно - Если Ваш продукт будет хорош, то яблоко, вероятно, позволит ему скользить через. Я рекомендовал бы подружиться с евангелистом разработчика в Apple.
Вы видели это обсуждение?
http://blog.airsource.co.uk/index.php/2008/11/11/views-of-uiimagepickercontroller/
и этот пример кода для пользовательского средства выбора?
http://www.codza.com/custom-uiimagepickercontroller-camera-view
надежда это помогает.
UIImagePickerController является подклассом UIViewController, который управляет иерархией представления. Вы свободны играть вокруг с иерархией представления, как те приложения, но это - опасное рассмотрение, что Apple не документирует его и могла изменить его на любом обновлении ОС.
Я не услышал ни о ком предоставляемом специальный доступ к библиотекам, но я считал, что существует незначительное различие между недокументированными классами и методами и частными платформами. Недокументированные классы являются серой областью, но частные платформы определенно не позволяются.
Простое объяснение состоит в том, что приложения в хранилище, как предполагается, не используют неподдерживаемые API, но это последовательно не проверяется. Приложения, которые Вы упомянули, или используют неподдерживаемые функции/классы/методы или иначе играют с иерархией представления - который самостоятельно не документирован даже при том, что она может быть сделана со стандартными API.
Вы могли сделать то, что они делают и рискуют с ним. Просто знайте о рисках. Ваше приложение могло бы (a) быть отклонено от хранилища, (b) быть принято, но позже загружено (это произошло для неподдерживаемого использования API), (c) быть принято и не загружено, но повреждение в следующий раз, когда Apple имеет новое обновление программного обеспечения iPhone (так как неподдерживаемые API или иерархии представления могут измениться, не предупреждая). Или Вы могли стать удачливыми и не иметь ни одного из этого, происходят.