Форум программистов, компьютерный форум, киберфорум
Мобильные телефоны, смартфоны
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/697: Рейтинг темы: голосов - 697, средняя оценка - 4.78
SweetyClyde

Как извлечь номера, сохраненные в памяти телефона?

29.09.2013, 14:33. Показов 132220. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Проблема. Модель телефона samsung gt-i9003. Сенсор разбит и не работает. Как можно извлечь номера? Через samsung kies не получается, т.к при подключении кабеля, требуется разблокировать телефон, что я сделать не могу, по причине разбитого сенсора. Резервной копии контактов на аккаунте google так же нет. Перерыл весь интернет, ответа не нашел. Поиск юзал, ответа не нашел.
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.09.2013, 14:33
Ответы с готовыми решениями:

Как извлечь номера, сохраненные в памяти телефона?
Смартфон acer z2000 Телефон включается, но сенсор не работает, а в памяти телефона сохранены важные номера. Их можно как-то извлечь?

Как перенести приложения с памяти телефона на флешку?
я в программирование ничего не понимаю. у меня есть к Вам одна просьба! подскажите пожалуйста, как перенести приложения с памяти телефона...

Телефон сломался. Как достать номер, записанный в памяти телефона
Помогите достать номер телефона из телефона. Телефон сломался и не подлежит ремонту. Прошивать тоже не хочу, так как очень нужен номер...

7
 Аватар для Виталий :)
3753 / 2666 / 101
Регистрация: 09.09.2012
Сообщений: 6,845
29.09.2013, 17:50
SweetyClyde,
Главное не прошивать, иначе есть возможность потерять все номера. Я не знаю, если он не хочет подключаться через USB (требует разблокировки экрана), то вариант заменить сенсор. Рассматриваете такой вариант? Правда тут придется нести его в сервис (главное упомянуть, мол информация ценная) и отдать ~2,5 килорубля.
1
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
29.09.2013, 19:46
Если откликается через виртуальный COM-порт, можно вытащить AT-командами. Иначе в морг сервис.
1
SweetyClyde
30.09.2013, 05:45
Вариант замены сенсора не рассматриваю, замена сенсора 3500, а покупка телефона с рук 5.

Добавлено через 29 секунд
Цитата Сообщение от gazlan Посмотреть сообщение
Если откликается через виртуальный COM-порт, можно вытащить AT-командами. Иначе в морг сервис.
Как это можно сделать? )
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
30.09.2013, 06:04
Цитата Сообщение от SweetyClyde Посмотреть сообщение
Как это можно сделать
Только, если есть доступ через виртуальный COM-порт.

А так - любой терминалкой (тот же, встроенный в Windows, HyperTerminal) + справочник по AT-командам (есть на сайте Nokia и многих других производителей). Если контакты в кириллице, убедитесь, что верно выставили кодировку перед дампом.

Посмотрите, для примера, EasyPort 4.280 на Программы для мобильной связи (без патча не будет работать с большими номерами портов). У них же есть и ссылки на документацию.
0
2 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 2
13.06.2014, 21:51
Подниму данную тему т.к. столкнулся с подобной проблемой (дисплей разбит необходимо было вытащить контакты) на Samsung galaxy s I9001
ОС: Android 2.3.6

На телефоне не включен USB debug, и по умолчанию не подключается как USB накопитель.
На дисплеи ничего не отображается и сенсор не работает.
Соответственно при подключении телефона к PC через USB появляются два съемных носителя на которые нельзя зайти «вставьте диск в дисковод».

Первое, что попробовал: Samsung kies и Samsung New PC Studio результат 0.

Второе, что попробовал подключить USB мышь через OTG Кабель Prolife (micro USB - USB-host) и на ощупь разблокировать и подключить как сменный носитель, вариант сразу отпал мышь не подключилась.

Третье что попробовал, с помощью ADB (Android Debug Bridge утилита входит в состав AndroidSDK) вытащить контакты. Но так как не включен USB debug команда:
Code
1
adb devices
выдавала "device not found".

Зашел в recovery mode на телефоне (выключил и включил зажав power+ volume up).
ADB увидел телефон. Зашел на него с помощью команды
Code
1
adb shell
появилось приглашение на ввод команд: $.

Но так как не было root прав нечего не мог монтировать, копировать, изменять.
Единственный вариант который пришел в голову найти прошивку, изменить файл настроек default.prop в прошивке, а именно следующие настройки: ro.secure, ro.debuggable. (ro.secure=0/1 - эта настройка влияет на то, от чьего имени будут выполняться команды adb.exе. 0 - все выполняется от root, 1 - от user.) и перепрошить (без потери данных).

Нашел прошивку: FMROOT_XXKP4.zip

FMROOT_XXKP4.zip содержит два файла:
  • AriesVE.ops
  • FMROOT_XXKP4.smd

Информацию как распаковать файл прошивки FMROOT_XXKP4.smd нашел тут: http://forum.xda-developers.co... stcount=88

Для распаковки файла FMROOT_XXKP4.smd применяется следующий скрипт (делал это все из под Ubuntu) взятый отсюда :

extract.sh
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/bin/bash
 
base=0
length=1
while (( length > 0 ))
do
    # calculate Length
    let "skip = base + 18"
    length=`hexdump -e '"%d"' -s ${skip} -n 2 ${1}`
    let "length = length * 65536"
    let "skip = base + 16"
    length2=`hexdump -e '"%d"' -s ${skip} -n 2 ${1}`
    let "length += length2"
    let "length = length / 512"  # Number of 512-Byte blocks
 
    # calculate offset
    let "skip = base + 22"
    offset=`hexdump -e '"%d"' -s ${skip} -n 2 ${1}`
    let "offset = offset * 65536"
    let "skip = base + 20"
    offset2=`hexdump -e '"%d"' -s ${skip} -n 2 ${1}`
    let "offset += offset2"
    let "offset = offset / 512" # Number of 512-Byte blocks
 
    # save header in case of first loop
    if (( base == 0 ))
    then
        dd if=${1} bs=512 of=header count=${offset}
    fi
 
    # extract filename
    let "skip = base + 32"
    filename=`dd if=${1} skip=${skip} count=16 bs=1 2>/dev/null`
 
    # and finally: extract image
    if (( length > 0 ))
    then
        echo "Length: ${length}"
        echo "Offset: ${offset}"
        echo "Filename: ${filename}"
        dd if=${1} bs=512 of=${filename} skip=${offset} count=${length} 2>/dev/null
    fi
 
    # next header
    let "base += 64"
done
Синтаксис применения: /extract.sh FMROOT_XXKP4.smd

Далее получил файл boot.img в котором как раз содержится файл default.prop.
Чтобы распаковать, запаковать его применил скрипты взятые отсюда (boot.img-tools.rar).

Изменил настройки в файле default.prop:
  • ro.secure=0
  • ro.debuggable=1
и обратно запаковал файл boot.img.

Далее собрал заново файл FMROOT_XXKP4.smd с помощью следующего скрипта взятого отсюда:
pack.sh
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#!/bin/bash
 
base=16
length=0
filename=dummy
 
# save the beginning
dd if=header of=newheader bs=1 count=16 2>/dev/null
 
# First create the MD5 checksums of all included (and maybe modified) files and generate the new header
while [ ! -z "${filename}" ]
do
    # Length, offset, etc. is unchanged, just copy it.
    let "skip = base"
    dd if=header of=newheadertmp bs=1 skip=${skip} count=32 2>/dev/null
    cat newheadertmp >> newheader
    rm newheadertmp
 
    # extract filename
    let "skip = base + 16"
    filename=`dd if=header skip=${skip} count=16 bs=1 2>/dev/null`
    if [ ! -z "${filename}" ]
    then
        echo "creating MD5Sum of: ${filename}"
        checksum=`md5sum ${filename} | tr '[a-z]' '[A-Z]'`
        echo -n ${checksum:0:32} >> newheader
    fi
 
    # next header
    let "base += 64"
done
 
# save the rest of the old header.
filesize=$(stat -c%s header)
let "base -= 32"
let "size = filesize - base"
 
dd if=header of=newheadertmp bs=1 skip=${base} count=${size} 2>/dev/null
cat newheadertmp >> newheader
rm newheadertmp
 
# the new header is the first content of the new archive.
cat newheader > ${1}
 
# now add all files to the archive.
filename=dummy
base=16
while [ ! -z "${filename}" ]
do
    # extract filename
    let "skip = base + 16"
    filename=`dd if=header skip=${skip} count=16 bs=1 2>/dev/null`
    if [ ! -z "${filename}" ]
    then
        echo "Adding: ${filename}"
        cat ${filename} >> ${1}
    fi
    # next header
    let "base += 64"
done
 
rm newheader
Синтаксис применения: / pack.sh FMROOT_XXKP4.smd

Для перепрошивки использовал ODIN Multidownloader 4.43.
Вошел в режим Download Mode на телефоне (выключил и включил зажав power+ volume down+ Home).
Запустил ODIN Multidownloader 4.43.
Подключил телефон, ODIN увидел телефон.
В ODIN Multidownloader 4.43 -> Select OPS добавил файл AriesVE.ops.
Поставил галочку One Package и добавил изменённый пакет прошивки FMROOT_XXKP4.smd кнопкой One Package.
Далее Start.
Прошивка зависла на пункте VerifyPlatform:V0, P0,R0.
Выключил телефон заново включил в режиме Download Mode.
Переименовал файл AriesVE.ops в CALLISTO_v1.0.ops.
И прошивка прошла

Далее обратно зашел в recovery mode на телефоне (выключил и включил зажав power+ volume up).
ADB увидел телефон. Зашел на него с помощью команды:
Code
1
adb shell
Появилось приглашение на ввод команд: # - это приглашение означает что работаем с root правами.

Далее смонтировал data командой:
Code
1
mount -t ext4 /dev/block/mmcblk0p17 /data
и скопировал файл содержащий контакты contacts2.db командой:
Code
1
adb pull /data/data/com.android.providers.contacts/databases/contacts2.db
Для того, чтобы открыть файл contacts2.db скачал дополнение на Firefox: SQLite Manager
Открыл и написал следующий запрос чтобы сформировать контакты в читабельной форме:
SQL
1
2
3
4
5
6
SELECT t2.id AS 'ID',t1.name AS 'Имя',t2.telefon AS 'Телефон' FROM 
 (SELECT  raw_contact_id AS 'id',data1 AS 'name', raw_contact_id  FROM DATA WHERE mimetype_id=6) t1
INNER JOIN
 (SELECT raw_contact_id AS 'id',data1 AS 'telefon', raw_contact_id  FROM DATA WHERE mimetype_id=5) t2
ON t1.id=t2.id
ORDER BY ID
Ура!!! Получилось!!! Думал, что контакты не вытащить. Может кому данный пост понадобится
0
0 / 0 / 0
Регистрация: 29.06.2015
Сообщений: 1
29.06.2015, 05:03
iodebug, как думаешь на телефон LG P715 ПОДОЙДЁТ ЭТА ПРОШИВКА?
0
Почетный модератор
Эксперт по компьютерным сетямЭксперт Windows
 Аватар для magirus
28049 / 15785 / 983
Регистрация: 15.09.2009
Сообщений: 67,752
Записей в блоге: 78
29.06.2015, 08:13
не хотите получить кирпич - даже не пытайтесь. не пойдет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.06.2015, 08:13
Помогаю со студенческими работами здесь

Как извлечь файл из оперативной памяти?
На одном из сайтов есть около 100 страниц с апплетами Ява (расчеты в электронике) Из них только 6 страниц сохраняются вместе с апплетом...

Как задать маску для номера мобильного телефона?
Здравствуйте! Скажите, как можно задать маску для номера мобильного телефона в модели или в представлении? Чтоб было в текстбоксе +7( )...

[Windows Phone] Как очистить раздел прочее в памяти телефона WP 8.1
Как очистить раздел прочее в памяти телефона?????? 3гига занято разделом прочее... И ничего почти не установлено.

TextBox для номера телефона. Что бы туда указывали только цифры и не более 10 символов. Как?
TextBox для номера телефона. Что бы туда указывали только цифры и не более 10 символов. Как сделать? Спасибо. <TextBox...

Как узнать скорость физической памяти своего телефона? В характеристиках об этом ни слова
Физической памяти, не оперативной


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1 У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\ А в самом низу файла-профиля. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru