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