Możliwe duplikaty: what does the su mean: process = Runtime.getRuntime().exec("su");Jak działa su na Androidzie? I jakie są warunki wstępne, aby działał? Co to jest rootowanie na Androida?
Jestem zmęczony próbując różnych rzeczy, ale wciąż nie powiodło mi się zrozumienie, kiedy będzie działać. Co to jest rootowanie urządzenia w systemie Android? Ktoś proszę, pomóż mi z tym.
Odpowiedziałem na następujące pytanie. Rozwiązanie, które napisałem tam, przetestowałem i również zadziałało.
Adding full permission for a image file in android.
Oto moje pytanie:
Próbowałem obserwuję.
Skopiowane su.
zainstalowana SuperUser.apk,
Z programu zadzwoniłem su, a następnie za pomocą nowo utworzonego procesu Przeprowadziłem wymaganych operacji.
To ma 2 wyniki.
1) Gdy urządzenie jest zrootowane (jak w przypadku wykonywania opcji Permanent root w z4root), działa, zmienia uprawnienia do pliku systemowego.
2) Gdy urządzenie nie jest zrootowane, nie działa.
Wyjaśnij, co jeszcze robi z4root, co sprawia, że zadanie jest możliwe. Wyjaśnij w skrócie.
Daj mi znać, jeśli moje pytanie nie jest jasne. Dzięki za tonę ..
Dzięki .. Ale jakaś wskazówka jak zmienić UID na 0 programowo ..? –
@ happy2Help Nie możesz zmienić nazwy użytkownika, chyba że jesteś rootem (numer 0). Tylko root może zmieniać identyfikator użytkownika, w przeciwnym razie każdy użytkownik mógłby uzyskać podwyższone przywileje. Odpowiedź: wywołaj plik wykonywalny z ustawioną flagą setuid (domyślnie w większości systemów Linux tylko su i sudo mają, ale możesz tworzyć swoje - będziesz potrzebować uprawnień roota, aby chun był rootem). – matix2267
Myślę, że trzeci akapit i poniżej są nieprawidłowe. Su na Androida nie używa flagi setuid, ponieważ Android nie respektuje flagi. Zamiast tego su z Androidem kontaktuje się z daemonsu daemona, który jest bezpośrednio rozwidlony przez init. Tak więc program uruchamiany z użyciem su nie jest procesem podrzędnym su, ale procesem podrzędnym daemonsu. –