GeoHot Opublikowano 16 Marca 2015 Zgłoś Udostępnij Opublikowano 16 Marca 2015 Jak wiecie wiele aplikacji z GooglePlay nie ma zaoferowanego języka polskiego.. Może ktoś zna dobrze język obcokrajowców i chciałby się trochę pobawić? Dziś pokażę jak tłumaczyć aplikacje dla androida.1. Musimy się zaopatrzyć w odpowiednie narzędzia.JavaJak pewnie wiele osób przynajmniej kojarzy, Java jest obiektowym językiem programowania na którym opiera się cały Android. Nie ma tu sensu wnikać co i jak - to nie jest potrzebne. Wystarczy tylko wiedzieć, że Java jest nam niezbędna i tyla.Jak się domyślam, Java jest obecna na waszych PC-tach - choćby z powodu przeglądania stron internetowych. Domyślam się również, że jest to środowisko JRE (Java Runtime Environment) - czyli wersja najprostsza, pozwalająca jedynie na "odtwarzanie" javowych apletów.Ja sugeruję użycie do naszych celów wersji bardziej zaawansowanej, pozwalającej również na tworzenie obiektów, czyli wersji JDK (Java Development Kit).Java SE - Downloads | Oracle Technology Network | OracleJEŻELI MASZ WINDOWS 7/VISTA:1. Menu start i prawym przyciskiem myszy wchodzimy we właściwości2. W oknie, które się pojawi szukamy pozycji "Zaawansowane ustawienia systemu" - po lewej stronie, ostatnia pozycja3. W kolejnym oknie (Właściwości systemu) namierzamy przycisk "Zmienne środowiskowe..." - jest na dole4. Teraz przechodzimy do bloku "Zmienne systemowe" i za pomocą suwaka szukamy w oknie wyrażenia "Path"5. Dwukrotnie kliknij na zmienną "Path"6. W polu "Wartość zmiennej:" przechodzimy do samego końca łańcucha znaków i umieszczamy tam w kolejności:znak średnika " ; ",ścieżkę dostępu do folderu zawierającego plik java.exeJeśli podczas instalacji Javy nie mieszałeś w parametrach instalacyjnych to owa ścieżka powinna wyglądać mniej-więcej tak:C:\Program Files\Java\jdk1.7.0_01\bin\Należy jednak pamiętać, że ścieżka zależy również od wersji javy i każdy musi ją sobie osobiście sprawdzić.Jeszcze jedna uwaga - w przypadku problemów z detekcją Javy przez program de/kompilujący pliki .apk w systemach x64 (bardzo częste zjawisko), sugeruję dodatkowe zainstalowanie środowiska Java w wersji x86.SDKSDK to moim zdaniem bardzo ważny składnik, lecz istnieją argumenty, że wcale nie jest on nam potrzebny.Android SDK | Android DevelopersNarzędzie do dekompilacji/kompilacji - w kolejnym punkcie2. DekompilacjaPlik androida (.APK) teoretycznie można otworzyć zwykłym WinRAR'em, jednak należy używać narzędzi typowo do tego przeznaczonych.Przedstawię teraz kilka takich małych programów:[TOOL] V4.0.3-xdaAutoTool ALL-Win | V4.0.1b-xdaautoAPKTool | V1.0.3-xdaautoDeoTool - xda-developers - Pakiet XDA AutoToolhttps://sourceforge.net/projects/apktranslation/ - ApkTranslationWizardhttps://code.google.com/p/android-apktool/ - APKToolZippyshare.com - APeKTutaj do wyboru, co dany "tłumacz" zechce. 3. Po dekompilacjiTen tryb otwarcia pliku apk daje nam, niestety, bardzo ograniczony dostęp do zasobów. Pomimo tego, że - jak nam się wydaje, bo tak widzimy - mamy władzę nad wieloma plikami to tak naprawdę nasza moc jest mocno ograniczona.Po pierwsze dla tego, że wiele zasobów (np. pliki xml) są w formie dla nasz niezrozumiałej - są niezdekompilowane - chińskie krzaczki, kwadraciki itd.4. Tekst do tłumaczeńO ile teksty zazwyczaj znajdują się w pliku strings.xml, lecz w innych wypadkach (słowa składają się np. na listę) znajdują się w pliku arrays.xml, który znajduje się w tym samym folderze (res\values). Je również należy przetłumaczyć ale trzeba być ostrożnym. Nie można usunąć żadnych znaków typu: < itd.Tłumaczymy tylko to, co znajduje się w android:text="NAPIS", jeśli jest napisem, a nie fragmentem kodu, jak tu np. adroid:text="@string_main"Pojedyncze słowa znaleźć można również w plikach xml w folderze res\layout.5. KompilacjaKompilujemy plik tym samym programem, który został dekompilowany.6. Podpisywanie instalkiZa pomocą tej opcji nadaje się plikowi apk elektroniczny podpis - bez niego Android nie zainstaluje aplikacji. Działanie opcji (poza "podpisaniem" pliku) zamieni nam wcześniej skompilowany plik z przedrostkiem unsigned na plik z przedrostkiem signed.Wszystkie z podanych czynności - dekompilacja, kompilacja i podpisywanie można wykonać używając narzędzi, które zostały podane w punkcie nr2.7. ProblemyMusimy jednak pamiętać, że są aplikacje, które nie dają nam się zdekompilować lub skompilować. Może być też tak: Program po edytowaniu plików może wykryć np. błędy w strukturze i nici z całej pracy.Co do autorów to coraz częściej też chronią woje pliki przed ingerowaniem w nich co nie daje nam czasem możliwości tłumaczenia.Gdyby nastąpiły problemy w tłumaczeniu proszę o dokładny opis, nie chodzi o samo "aplikacja x nie daje się przetłumaczyć", proszę o podanie nazwy aplikacji, programu, którego się używało i samej instalki, którą można wrzucić na byle jaki serwer abym mógł sprawdzić kod itd. (proszę tylko o nie wrzucanie plików na serwery z limitami, bo ściąganie zajmie mi pół dnia )Dodatkowa informacja:Co do wspomnianego braku możliwości tłumaczenia to mimo tego możemy sobie poradzić, aczkolwiek zależy to od developera. Wybieramy daną aplikację np w google play i patrzymy w informacje, a tam będzie coś w stylu skontaktuj się z programistą. Możemy napisać prośbę o udostępnienie plików językowych, które (wersja najbardziej realistyczna) trzeba by było odesłać po tłumaczeniu, zostałaby sprawdzona i dodana w najbliższej aktualizacji.Co do udostępniania na inne strony należy wspomnieć o jego źródle i faktycznym autorze. 2 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
camello Opublikowano 3 Marca 2022 Zgłoś Udostępnij Opublikowano 3 Marca 2022 Cześć. Czy od 2015 roku coś się zmieniło w sposobie tłumaczenia aplikacji, coś w prostszym kierunku? Czy rodzaj kodowania ma jakieś znaczenie? Gdy użyjemy polskich znaków w pliku bez odpowiedniego kodowania, to nie będzie krzaczków? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.