- web apps - podstawowy poziom uprawnień, bez dostępu do uprzywilejowanego lub wewnętrznego API,
- privileged apps - rozszerzony poziom uprawnień plus z dostępem do uprzywilejowanego API (aplikacje hostowane on-line nie mogą mieć przyznanego tego poziomu; mają go jedynie aplikacje zainstalowane lokalnie),
- certified apps - najwyższy poziom uprawnień z dostępem do wszystkich API (aplikacje firm trzecich nie mogą mieć przyznanego tego poziomu; mają go jedynie aplikacje zainstalowane przez producenta systemu lub urządzenia).
- Code: Select all
Please Login or Register, to see this Content
WebIDE Sideload
Środowisko deweloperskie oprócz możliwości projektowania i programowania nowych aplikacji umożliwia również wgrywanie już tych istniejących. Można się w nie wyposażyć na dwa sposoby.
Jeśli pracujesz na jakiejś dystrybucji Linuksa (np. Ubuntu), możesz zainstalować oficjalny emulator KaiOSRT.
- Code: Select all
Please Login or Register, to see this Content
W pozostałych przypadkach możesz wykorzystać środowisko do programowania aplikacji Boot To Gecko wbudowane w przeglądarkę Firefox w wersji 52.9 ESR lub wcześniejszej albo w jej forka Pale Moon w wersji 28.6.1 lub wcześniejszej.
- Code: Select all
Please Login or Register, to see this Content
- Code: Select all
Please Login or Register, to see this Content
Ponadto potrzebne będzie jeszcze narzędzie adb (Android Debug Bridge) znane z dewelopowania smartfonów z Androidem.
- Code: Select all
Please Login or Register, to see this Content
- Code: Select all
Please Login or Register, to see this Content
- Code: Select all
Please Login or Register, to see this Content
W obu przypadkach należy wykonać następujące operacje:
- Na telefonie wprowadź sekretny kod *#*#33284#*#* (*#*#debug#*#*) i sprawdź, czy w systemowym pasku zadań powyżej pojawiła się ikonka robaka (bug icon) świadcząca o aktywnym trybie Debug Mode.
- Połącz telefon z komputerem poprzez adb. Jeśli WebIDE go nie widzi, wpisz komendę:
adb forward tcp:6000 localfilesystem:/data/local/debugger-socket command - Ustaw WebIDE, aby łączył się z Remote Runtime na adresie localhost:6000.
- Wybierz folder z rozpakowanym archiwum żądanej aplikacji używając opcji Open packaged app w WebIDE.
- Uruchom instalację, klikając zielony trójkąt powyżej.
- Aplikacja powinna zostać otwarta i pojawić się w menu.
- Code: Select all
Please Login or Register, to see this Content
OmniSD Jailbreak
Ten sposób, czerpiący swoją nazwą (jailbreaking, czyli dosłownie wyjście z więzienia) z ekosystemu firmy Apple, umożliwia instalowanie każdej aplikacji z pamięci telefonu lub z karty pamięci za pomocą narzędzia OmniSD. Jest on dość bezpieczny, jednak podczas jego wykonywania wszystkie dane na telefonie zostaną wyczyszczone!
Na wstępie upewnij się, że telefon posiada najnowsze dostępne firmware, a jeśli nie, to je do niego zaktualizuj. Do przeprowadzenia tego jailbreak'a potrzebujesz również środowiska deweloperskiego WebIDE opisanego już w pierwszej metodzie.
- Tak jak tam wprowadź telefon w Debug Mode i połącz go z WebIDE poprzez adb. Jeśli połączenie nie działa, spróbuj ponownie uruchomić telefon, uruchomić polecenie adb forward i połączyć się ponownie.
- W momencie wskazania żądanej aplikacji do wgrania pobierz, rozpakuj i wybierz folder z OmniSD.
- Code: Select all
Please Login or Register, to see this Content
- Uruchom instalację, klikając zielony trójkąt w WebIDE.
- Jeśli instalacja się powiedzie, narzędzie uruchomi się na telefonie. Naciśnij wówczas # i potwierdź monit o uruchomienie uprzywilejowanego przywracania ustawień fabrycznych.
- Po zakończeniu resetowania w zakładce Urządzenie w Ustawieniach powinno pojawić się menu Developer.
- Na koniec powtórz tę procedurę od początku raz jeszcze. Po jej dwukrotnym wykonaniu OmniSD zostanie zainstalowany w telefonie i będzie gotowy do przyjmowania paczek aplikacji spoza sklepu.
OmniSD akceptuje paczki aplikacji w formacie *.zip. Archiwum musi zawierać następujące pliki:
- application.zip z rzeczywistą aplikacją KaiOS / FFOS / B2G zgodną z WebIDE,
- update.webapp - może być pusty, ale musi być obecny,
- metadata.json w następującym formacie:
- Code: Select all
Please Login or Register, to see this Content
przy czym [your_app_id] należy zastąpić faktycznym identyfikatorem aplikacji (origin) zarejestrowanym w manifeście, a nazwę manifest.webapp należy zmienić, jeśli w archiwum application.zip jest on nazywany inaczej.
- Code: Select all
Please Login or Register, to see this Content
- Code: Select all
Please Login or Register, to see this Content
- Code: Select all
Please Login or Register, to see this Content
Patchowanie /data
Jeśli posiadasz urządzenie, które nie łączy się z WebIDE po adb i nie możesz przez to użyć żadnej z powyższych metod, możesz skorzystać z metody uniwersalnej polegającej na odblokowywaniu ukrytego menu deweloperskiego i dodawaniu możliwości takiej łączności. Jest ona bezpieczna i nie psuje mechanizmu oficjalnych aktualizacji, ale za to dość skomplikowana.
Cała idea polega na zmodyfikowaniu za pomocą komputera partycji /data z danymi użytkownika. Najpierw trzeba więc ją zgrać z telefonu pamiętając, że waży co najmniej 1 GB (w przypadku Nokii 8110 4G nawet 2 GB). Następnie należy użyć edytora heksadecymalnego, aby spatchować ustawienia, czyli przełączyć jeden bit z 0 na 1 odpowiedzialny za wyświetlanie menu deweloperskiego (developer.menu.enabled) i zapisać tak zmodyfikowaną kopię obrazu partycji. Później należy zamontować sobie ją w systemie (najlepiej linuksowym) z uprawnieniami roota, aby uzyskać dostęp do układu plików i folderów, dorzucić do folderu /data/misc/adb/ klucz publiczny adb znajdujący się w lokalizacji /home/.android/adbkey w naszym systemie, a po wszystkim ją odmontować. Na końcu nie pozostaje już nic innego, jak tylko przeflashować telefon tak zmodyfikowanym w dwójnasób obrazem partycji.
Po wykonaniu tych wszystkich operacji trzeba jeszcze przeprowadzić instalację OmniSD (lub Wallace) oraz uruchomić uprzywilejowane przywracanie ustawień fabrycznych – dokładnie w taki sam sposób, jak ten opisany w metodzie z jailbreakiem. Jeżeli wszystko się uda, w ustawieniach urządzenia pojawi się menu Developer oraz będzie można instalować wszystkie aplikacje firm trzecich z wolnego obiegu.
Szczegółowe instrukcje przedstawiające wszystkie operacje krok po kroku opisane są w poniższym artykule.
- Code: Select all
Please Login or Register, to see this Content
Extreme Jailbreak
Ostatnia z metod jest najbardziej ryzykowna, ponieważ ingeruje w partycję systemową instalując na niej OmniSD, przez co psuje mechanizm oficjalnych aktualizacji! Korzystaj z niej tylko w ostateczności i na własną odpowiedzialność!
Wszystko, czego potrzebujesz, to zainstalowany tryb Recovery, który jest zdolny do flashowania paczek *.zip oraz pobraną paczkę OmniJB-Final.zip:
- Code: Select all
Please Login or Register, to see this Content
Wszystko, co musisz zrobić, to umieścić tę paczkę na karcie pamięci i z poziomu Recovery wybrać opcję aktualizacji systemu za pomocą niej. Do prawidłowego działania zalecane jest jeszcze wyczyszczenie wszystkich danych z telefonu (tzn. data wipe). Po tych operacjach w ustawieniach urządzenia pojawi się menu Developer.
- Code: Select all
Please Login or Register, to see this Content