Ответ 1
Для конкретного примера доступа к базе данных SMS/MMS см. gTalkSMS.
Начинающий Android dev здесь.
Я пытаюсь создать приложение, которое будет читать SMS-сообщения, хранящиеся на устройстве, а затем дать статистику пользователя о своих привычках (например, о том, кого они часто сообщают, об общих словах и т.д.).
Но, насколько мне известно, не существует способа сделать это. Я смотрел на форумах, и большинство из них говорит о доступе к папке "Входящие", где вы можете найти сообщения, которые пользователь не читал. Как же тогда приложение по умолчанию и стороннее (например, Handcent) отображают одни и те же тексты? Они не хранят свою собственную базу данных, потому что Handcent отобразит все тексты при новой установке.
tl; dr: Как читать SMS-сообщения на устройствах Android, особенно сообщения, которые были прочитаны ранее.
Для конкретного примера доступа к базе данных SMS/MMS см. gTalkSMS.
Вам нужно будет вызвать класс SmsManager
. Вероятно, вам придется использовать константу STATUS_ON_ICC_READ
и, возможно, поставить то, что вы получаете там, в локальные базы данных ваших приложений, чтобы вы могли отслеживать то, что вы уже прочитали, и новые вещи для вашего приложения для анализа.
НО имейте в виду, что вы должны объявить использование класса в своем манифесте, чтобы пользователи увидели, что у вас есть доступ к их SMS, вызванным в диалоговом окне разрешений, которое они получают при их установке. Просмотр доступа к SMS необычен и может отключить некоторых пользователей. Удачи.
Сделайте следующее, загрузите SQLLite Database Browser из здесь:
Найдите свой дБ. файл на вашем телефоне.
Затем, как только вы установите программу, перейдите в раздел "Обзор данных", вы увидите все SMS-сообщения!
Фактически вы можете экспортировать данные в файл excel или SQL.