Google Android - это несложно

Добро пожаловать на форум сайта startandroid.ru
Текущее время: 21 июн 2018, 11:10

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Получаем ROOT права
СообщениеДобавлено: 02 апр 2012, 17:30 

Зарегистрирован: 30 мар 2012, 09:54
Сообщений: 13
Откуда: Россия, респ. Мордовия, пгт. Торбеево
Благодарил (а): 0 раз.
Поблагодарили: 6 раз.
Недавно начал делать свою первую программку, и сначала пытался сделать функцию посредством ROOT, но отказался от этой затеи. Про ROOT нашел информацию только на иностранном языке, и то очень мало, пришлось разобрать ни в чем не повинное приложение Battery Calibration :)

Ниже приведенный код выполняет любую команду, требующую ROOT права.

Код: [ Загрузить ] [ Скрыть ]
Using Java Syntax Highlighting
  1. private boolean superuser(String paramString)
  2.   {
  3.     boolean i = true;
  4.     String[] arrayOfString = new String[3];
  5.     arrayOfString[0] = "su";
  6.     arrayOfString[1] = "-c";
  7.     arrayOfString[2] = paramString;
  8.     try
  9.     {
  10.       int j = Runtime.getRuntime().exec(arrayOfString).waitFor();
  11.       if (j != 0)
  12.         i = false;
  13.       return i;
  14.     }
  15.     catch (IOException localIOException)
  16.     {
  17.       while (true)
  18.         i = false;
  19.     }
  20.     catch (InterruptedException localInterruptedException)
  21.     {
  22.       while (true)
  23.         i = false;
  24.     }
  25.   }
  26.  


Запускается функция с помощью этой строки:
Код: [ Загрузить ] [ Скрыть ]
Using Java Syntax Highlighting
  1. superuser(<ваша команда>)

Функция возвращает true, если команда выполнена успешно, иначе - false

Вместо <ваша команда> вписывайте вашу команду, например:

Код: [ Загрузить ] [ Скрыть ]
Using Java Syntax Highlighting
  1. if (superuser("rm " + myMain.this.statpath))
  2.               alertok.show();

В данном случае с помощью команды rm удаляется файл, указанный в myMain.this.statpath

P.S. вопрос к админу сайта:
Возможно ли с помощью ROOT осуществить установку приложений в обход Package Installer?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Получаем ROOT права
СообщениеДобавлено: 04 апр 2012, 09:55 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1395
Благодарил (а): 0 раз.
Поблагодарили: 75 раз.
Так просто? А это баг или фича?

SKR писал(а):
Возможно ли с помощью ROOT осуществить установку приложений в обход Package Installer?

Я пока вожусь только с разработкой приложений, а с установками в обход и root-ами не сталкивался, ничего не могу сказать.

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Получаем ROOT права
СообщениеДобавлено: 05 апр 2012, 15:04 

Зарегистрирован: 30 мар 2012, 09:54
Сообщений: 13
Откуда: Россия, респ. Мордовия, пгт. Торбеево
Благодарил (а): 0 раз.
Поблагодарили: 6 раз.
damager82 писал(а):
Так просто? А это баг или фича?.


Вроде нет, как я понял:

Цитата:
Класс java.lang.Runtime имеет статический метод getRuntime(), который возвращает текущее выполнение Java-среды. Это единственный способ получить ссылку на объект во время выполнения. С его помощью, вы можете запускать внешние программы, вызвав метод exec().


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Получаем ROOT права
СообщениеДобавлено: 14 июл 2016, 13:23 

Зарегистрирован: 05 янв 2016, 23:22
Сообщений: 5
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
а что делать если код в приложении
Runtime.getRuntime().totalMemory() вылетает с ошибкой java.lang.NullPointerException т.е. Runtime.getRuntime() возвращает нулевой указатель, как будто нет прав?
девайс заводской и не рутованый - может в этом дело?
пробовал добавлять <uses-permission android:name="android.permission.ACCESS_SUPERUSER" />
не помогает


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 3 часа


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB