Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > Android

Android Разработка игр на платформе Android

Ответ
 
Опции темы
Старый 20.10.2014, 08:42   #16
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: Телефония

Сообщение от S_007 Посмотреть сообщение
не думал что на этот форум ещё заглядывают крутые программисты...! Спасибо вам ребята, за ваши ответы и наглядные примеры. Reglon, твой пример, ну ты просто маладца! Нагуглить такого примера мне не удалось по всей паутине, спасибо тебе, теперь буду знать как с логами работать. Только уже немного остыл по поводу этого, потому что где-то прочитал, да и pozitiffcat это подтверждает, что при помощи логов не а каждом аппарате будет работать. TelephonyManager раскурил вдоль и поперек, но CALL_STATE_RINGING срабатывает при входящем звонке. А задумка была до боли банальная - именно при исходящем вызове чтоб начинал работать счетчик секунд после поднятия трубки на другом конце провода, ведь это в каждом аппарате есть, (т.е. длительность разговора) только чуваки из googla такую функцию к сожалению не сделали. Если в чём-то не прав то поправьте, буду очень рад.

Ну наберусь наглости задать ещё один вопрос
как из программы удалять входящие смс, хоть по одной хоть все
нашёл вот такой код, на нём приложение вылетает, как правильно подскажите пожалуйста

Uri uriSms = Uri.parse("content://sms/inbox");
Cursor c = getContentResolver().query(uriSms, null,null,null,null);
int thread_id = c.getInt(1); //get the thread_id
getContentResolver().delete(Uri.parse("content://sms/conversations/" + thread_id),null,null);
Не факт, что запрос возвращает в поле с индексом "1" именно ту информацию, которая тебе нужна. Нужно явно указать поля.
При получении ответа ты забыл moveToFirst
Вот пример:
Uri uriSms Uri.parse("content://sms/inbox");
Cursor c context.getContentResolver().query(uriSms,
                     new 
String[] { "_id""thread_id"}, nullnullnull);
if (
!= null && c.moveToFirst() {
    do {
        
long id c.getLong(0);
        
long threadId c.getLong(1);
        
context.getContentResolver().delete(
                        
Uri.parse("content://sms/" id), nullnull);
    } while (
c.moveToNext());

Это удалит все СМС. Я тут показал способ перебора. Там ты можешь сравнивать поля, например по номеру телефона. Достаточно в выбираемые поля добавить "address" и в цикле перебора выполнить проверку if (addres.equals("+79379379377") { ..... ну дальше ты понял
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
S_007 (20.10.2014)
Старый 20.10.2014, 08:55   #17
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: Телефония

Насчет момента поднятия трубки на удаленном конце.
Покури на тему android.intent.action.NEW_OUTGOING_CALL
Там нужно будет добавить право <uses-permission android:name="android.permission.PROCESS_OUTGOING_ CALLS" />
и зарегать BroadCastReceiver на какойнибудь класс, который будет наследован от интерфейса слушателя,
<receiver android:name=".listener.OutCallLogger">
    <
intent-filter>
        <
action android:name="android.intent.action.NEW_OUTGOING_CALL" />
    </
intent-filter>
</
receiver
и в нем обработать событие:
public class OutCallLogger extends BroadcastReceiver {
   @
Override
   
public void onReceive(final Context contextIntent intent) {
      
// что-то делаем, так же можем зарегать как и раньше, что бы получать,
      // когда телефонный менеджер переходит в состояние IDLE, чтобы узнать, 
      //что трубку положили
   
}

(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо pozitiffcat за это полезное сообщение:
St_AnGer (20.10.2014), S_007 (20.10.2014)
Старый 20.10.2014, 09:27   #18
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Телефония

И смотри какие разрешения требуются для работы того-то, иначе будет выкидывать приложение, если разрешения не отмечены в манифесте.
(сам долго искал баг, оказалось забыл добавить разрешение)
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо RegIon за это полезное сообщение:
St_AnGer (20.10.2014), S_007 (20.10.2014)
Старый 20.10.2014, 12:53   #19
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: Телефония

Сообщение от RegIon Посмотреть сообщение
И смотри какие разрешения требуются для работы того-то, иначе будет выкидывать приложение, если разрешения не отмечены в манифесте.
(сам долго искал баг, оказалось забыл добавить разрешение)
само собой, я забыл написать
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 06:09.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com