Самоудаление

Ответить
tirpitz28
Сообщения: 13
Зарегистрирован: 16 ноя 2012, 16:58

Самоудаление

Сообщение tirpitz28 » 24 ноя 2013, 19:01

Возможно ли запрограммировать так, чтобы приложение Android могло удалить само себя?

Аватара пользователя
trew
Сообщения: 450
Зарегистрирован: 28 сен 2013, 17:34

Re: Самоудаление

Сообщение trew » 24 ноя 2013, 21:55

tirpitz28 писал(а):Возможно ли запрограммировать так, чтобы приложение Android могло удалить само себя?
Вот так нужно искать в поисковике: android delete app own
Когда выкладываете код на форум - код оформляйте. Редактор - поищите слова Geshi Syntax -Java. (или xml)
Свои сообщения можно редактировать - кнопка edit.

tirpitz28
Сообщения: 13
Зарегистрирован: 16 ноя 2012, 16:58

Re: Самоудаление

Сообщение tirpitz28 » 24 ноя 2013, 22:01

Спасибо огромное!

tirpitz28
Сообщения: 13
Зарегистрирован: 16 ноя 2012, 16:58

Re: Самоудаление

Сообщение tirpitz28 » 25 ноя 2013, 19:27

Реализовал приложение полностью все, что мне нужно было, сейчас пытаюсь сделать самоудаление - вызываю функцию deleteDir(File dir), а какой параметр туда писать не знаю, так как даже не знаю куда на эмуляторе приложение устанавливается. Как быть?=(

Аватара пользователя
trew
Сообщения: 450
Зарегистрирован: 28 сен 2013, 17:34

Re: Самоудаление

Сообщение trew » 25 ноя 2013, 19:42

tirpitz28 писал(а):Реализовал приложение полностью все, что мне нужно было, сейчас пытаюсь сделать самоудаление - вызываю функцию deleteDir(File dir), а какой параметр туда писать не знаю, так как даже не знаю куда на эмуляторе приложение устанавливается. Как быть?=(
[syntax=java] String appPath = getApplicationInfo().dataDir;[/syntax]Возвращает:
/data/data/<homeAppDir>
homeAppDir - это имя пакета вашей программы

Только вот не знаю, для всех версий android подходит данный способ или нет.
Когда выкладываете код на форум - код оформляйте. Редактор - поищите слова Geshi Syntax -Java. (или xml)
Свои сообщения можно редактировать - кнопка edit.

tirpitz28
Сообщения: 13
Зарегистрирован: 16 ноя 2012, 16:58

Re: Самоудаление

Сообщение tirpitz28 » 25 ноя 2013, 19:47

Огромное спасибо! Сейчас попробую и отпишусь

tirpitz28
Сообщения: 13
Зарегистрирован: 16 ноя 2012, 16:58

Re: Самоудаление

Сообщение tirpitz28 » 26 ноя 2013, 13:35

trew писал(а):
tirpitz28 писал(а):Возможно ли запрограммировать так, чтобы приложение Android могло удалить само себя?
Вот так нужно искать в поисковике: android delete app own
В приведенном примере по ссылке android delete app own использовал функцию
[syntax=java]
public static boolean deleteDir(File dir) {
if (dir != null && dir.isDirectory()) {
String[] children = dir.list();
for (int i = 0; i < children.length; i++) {
boolean success = deleteDir(new File(dir, children));
if (!success) {
return false;
}
}
}

return dir.delete();
}
[/syntax]
Передавал в нее параметр
[syntax=java] String appPath = getApplicationInfo().dataDir;[/syntax]
Все работает без ошибок, но ничего не происходит
Вышеуказанная строка действительно возвращает путь, но через консоль я вижу что не полный, так как в конце добавляется -1.apk -2.apk и так далее, пытался добавлять даже в цикле эти хвостики все равно процесс самоудаления не происходит=(

Аватара пользователя
trew
Сообщения: 450
Зарегистрирован: 28 сен 2013, 17:34

Re: Самоудаление

Сообщение trew » 26 ноя 2013, 14:00

Начинать нужно не с циклов, а со строки типа String.

Путь до программы у вас есть? Да.
/data/data/имя_пакета
1. выведите в лог путь, по которому удаляете программу. убедитесь что он верный.
2. научитесь удалять одну программу.
3. разбирайтесь с циклом.
Когда выкладываете код на форум - код оформляйте. Редактор - поищите слова Geshi Syntax -Java. (или xml)
Свои сообщения можно редактировать - кнопка edit.

tirpitz28
Сообщения: 13
Зарегистрирован: 16 ноя 2012, 16:58

Re: Самоудаление

Сообщение tirpitz28 » 26 ноя 2013, 15:46

Я удалял одну программу, но удалял ее в цикле, прописав все возможные варианты имени, но по последнему комментарию понял - что удалял ее не из того каталога

Ответить