Модераторы: javastic
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> onActivityResult не всегда вызывается 
:(
    Опции темы
unclebenedict
Дата 20.4.2012, 20:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 30.3.2012

Репутация: нет
Всего: нет



Всем привет, столкнулся с такой прблемой, есть приложение на андрой оно использует 3 Activity (MainActivity,FirstActivity,SecondActivity). И работает по следующей схеме: MainActivity вызывает FirstActivity 

Код

startActivityForResult(new Intent(this,FirstActivity.class),10);


FirstActivity что то делает и в конце задает какие то данные, отваливается

Код

Intent resultIntent = new Intent();
resultIntent.putExtra("ByteData", data);
setResult(Activity.RESULT_OK, resultIntent);
finish();


по идее бы в MainActivity должен был бы вызваться onActivityResult ,но почему то, он вызывается не всегда. Иногда просто идет возврат на  MainActivity и тишина, при нажатии аппаратной кнопки back всегда отрабатывает как нужно. С чем может быть связана данная трабла ? finish() не так отрабатывает ?

Это сообщение отредактировал(а) unclebenedict - 20.4.2012, 21:18
PM MAIL   Вверх
unclebenedict
Дата 20.4.2012, 21:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 30.3.2012

Репутация: нет
Всего: нет



Кажется нашел в чем проблема, finish() в колбеке, поэтому и неработает, возникает вопрос тогда ,а как из колбека вызвать финишь для активити ?
PM MAIL   Вверх
javastic
Дата 23.4.2012, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

Репутация: 2
Всего: 27



Странно, я делаю именно с finish() в дочернем активити и все прекрасно работает. Проверь Log.


--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
unclebenedict
Дата 23.4.2012, 20:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 30.3.2012

Репутация: нет
Всего: нет



Все не так просто smile Если например я в дочернем активити делаю меню и по одному из пунктов вызываю finish() то все хорошо закрывается и onActivityResult вызывается тоже хорошо, но я дергаю finish() из jpegCallback . Мне нужно что бы активити сделало снимок, и отвалилась. Стало быть делаю следующее

Код

PictureCallback jpegCallback = new PictureCallback () {
    public void onPictureTaken(byte[] data, Camera camera) {
        m_camSurface.cameraClose();
        Intent resultIntent = new Intent();
        resultIntent.putExtra("image",data);
        setResult(Activity.RESULT_OK, resultIntent);
        finish();
    }
}


и в таком варианте активити то закрывается, но onActivityResult не вызывается. Пробовал finishActivity() ,но так почему то даже активити не закрылся. 
PM MAIL   Вверх
unclebenedict
Дата 23.4.2012, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 30.3.2012

Репутация: нет
Всего: нет



Действительно там была ошибка 

Код

!!! failed binder transaction !!!


Насколько понял это из за объема передаваемых данных, интересно обойти можно ли как то, или только сохранением на диск ?

PM MAIL   Вверх
javastic
Дата 24.4.2012, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

Репутация: 2
Всего: 27



Пиши на карту памяти.


--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Android | Следующая тема »


 




[ Время генерации скрипта: 0.0731 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.