PDA

Просмотр полной версии : CameraRoll недоступна для Android Jelly Bean


Astraport
20.12.2012, 15:04
Удивлен, но факт. CameraRoll в Air 3.5 не работает для новых устройств. Например, Samsung Galaxy SIII (GT-i9300) с Android Jelly Bean 4.1.1

Может кто сталкивался с решением?

private var c:CameraRoll;
if(CameraRoll.supportsAddBitmapData){
c = new CameraRoll();
c.addEventListener(Event.COMPLETE, onSave);
c.addEventListener(ErrorEvent.ERROR, onError);
c.addBitmapData(bitmapData);
} else {
ta.text += 'camera roll not support \n';// not support for Samsung Galaxy SIII (GT-i9300) Android Jelly Bean 4.1.1
}

alatar
24.12.2012, 16:59
http://forum.starling-framework.org/topic/camerarollsupportsaddbitmapdata-not-support-on-jelly-bean-devices

Добавлено через 48 секунд
А ник я и не посмотрел. )))

Astraport
24.12.2012, 17:45
Ага, а на stackoverflow не нашел?:)
Я с таким безобразием не буду мириться, всех достану:) А проблема, кстати, остается.

alatar
24.12.2012, 17:52
Нашел везде, просто ссылку не запостил. :)
Проблема может быть и в "мастерах" из самсунга, там все таки не чистый андроид. Раз на других девайсах работает. Галерея там родная или допиленная?

Astraport
24.12.2012, 18:16
У меня нет этого устройства, есть S2. Там обычная галерея и все работает.

Скажу больше. Когда S3 только появились, то на них была прошивка 4.0 и я смотрю на отзывы приложения с этой функцией на маркете (раньше там указывалось какое устройство у юзера оставившего отзыв, сейчас отменили) - было несколько положительных отзывов от владельцев S3. Такой бы косяк не остался незамеченным.
А где-то несколько месяцев назад посыпались отзывы от владельцев ТОЛЬКО этого устройства, что мол аппа не сохраняет в галерею. Подозреваю, что именно связано с вышедшим обновлением до 4.1

Послал одному юзеру тестовое приложение - в логах и показало в чем проблема. У него официальный аппарат, без всяких патчей, не рутованный.

Добавлено через 2 минуты
Есть одно полу-решение. Сохранять в хранилище и предлагать от туда расшарить (на мыло, соцсети).

alatar
24.12.2012, 18:36
Послал одному юзеру тестовое приложение - в логах и показало в чем проблема.
И в чем проблема?

Добавлено через 40 секунд
В том что нет поддержки?

Добавлено через 1 минуту
Могу протестировать на Galaxy Nexus с чистым 4.2.1.

Добавлено через 3 минуты
Есть одно полу-решение.
Можно еще через ANE сделать.

Astraport
24.12.2012, 19:10
Проблема в том, что CameraRoll.supportsAddBitmapData == false
Могу протестировать на Galaxy Nexus с чистым 4.2.1
Спасибо. Отправлю линк в ПМ.

Добавлено через 7 минут
Можно еще через ANE сделать.
Что-то таких готовых ANE не нахожу. А самому делать сложно.

illuzor
24.12.2012, 22:20
Astraport, приверил на голом 4.1.2 и 4.2.1 - работает.
А самому делать сложно.Могу попробовать помочь. Скайп - illuzor.
В самсунгах используется своя оболочка и своя галерея, возможно, она работает не так, как стандартная. Если даже java код не даст результатов, то нет смысла пытаться что-то делать дальше.

upd, хотя можно попробовать обходной путь - просто сохранять файл изображения на sd карту и отдавать его галерее.

upd1, можно ещё проще. Через ane узнавать путь к директории камеры и сохранять туда файл изображения. Галерея его автоматически увидит.

alatar
24.12.2012, 23:28
Пишет, что сохранило в галерее, но ничего не сохраняет. На экране выбора шаблона третья кнопка не помещается в экран.

Astraport
24.12.2012, 23:39
Могу попробовать помочь.
Свяжусь, спасибо.
Пишет, что сохранило в галерее, но ничего не сохраняет.
Ну вот...

А может ошибка из-за синхронности операций? Я одновременно сохраняю в хранилище для использования изображения в самом приложении и в галерее - для нужд юзера. Действительно, пути к галерее могут быть разными и их штатными средствами не получить, поэтому такой метод.

alatar
25.12.2012, 00:15
Тебе надо в пермишены добавить WRITE_EXTERNAL_STORAGE.
http://forums.adobe.com/message/4848057

Astraport
25.12.2012, 00:37
Неужели. Завтра проверю. Спасибо.

Добавлено через 10 часов 27 минут
Да, проблема решена. Всем спасибо.
Странно, что я долго искал, но сам не нашел решения.