Archiwum dla kategorii programowanie
Polskie znaki w Unicode
Napisany przez Przemek w programowanie dnia 4 września 2009
Ą – \u0104; ą – \u0105
Ć- \u0106; ć – \u0107
Ę- \u0118; ę – \u0119
Ł- \u0141; ł – \u0142
Ń- \u0143; ń – \u0144
Ó- \u00d3; ó – \u00f3
Ś- \u015a; ś – \u015b
Ź- \u0179; ź – \u017a
Ż- \u017b; ż – \u017c
Sprzętowa akceleracja OpenGL w Androidzie
Napisany przez Przemek w programowanie dnia 3 września 2009
Parę dni temu, na emulatorze odpaliłem demo SpriteText – duży obracający się trójką z nałożoną nieprzeźroczystą teksturą 128×128 pikseli. Wynik – 23 fps, to nie dużo, ale emulator nie wykorzystuje karty graficznej. Wszystko spoczywa na procesorze.
Dziś odpaliliśmy demo na HTC Magic. Telefon ma sprzętową akcelerację, a tu marne 18 fps. Wygląda na to, że z tą akceleracją, to jakieś małe oszustwo. No i rzeczywiście, nie wszystko jest przyspieszane. W sieci znalazłem taką odpowiedź na problem z G1:
On the G1 hardware acceleration is used for all window compositing and OpenGL drawing. It is not currently used for rendering inside of a window. We’d like to support acceleration inside of a window, but this is very tricky to implement (requiring multiple active OpenGL contexts in multiple processes) and not currently scheduled on the roadmap.
Nie wygląda to dobrze. Możemy sobie tylko pomachać systemowymi okienkami. Widać niewiele się posunęło od grudnia 2008 🙁 Może Android 2.0 będzie już miał pełną? Zobaczymy co wypuści Motorola, bo ten cytat wygląda ciekawie:
Native support for OpenGL ES 2.0 + hardware acceleration from the PowerVR SGX 530 = mobile gaming device more powerful than a Sony PSP or Nintendo DSi
Android emulator i internet
Napisany przez Przemek w programowanie dnia 30 sierpnia 2009
Jeżeli browser emulatora nie może się połączyć z internetem, to prawdopodobnie nie mamy ustawionego DNS. Oto, co należy wtedy zrobić.
W Eclipse w „Run Configurations… -> Android Application -> Twoja aplikacja” w zakładce „Target” znajdź „Additional Emulator Command Line Options” i wstaw „-dns-server 192.168.1.1
” (bez cudzysłowów i zamiast 192.168.1.1 adres IP twojego DNS’u.
W przypadku korzystania z serwera proxy należy podać „-http-proxy http://<username>:<password>@<server>:<port>
” (Więcej szczegółów tutaj).
Koniecznie zrestartuj emulator, a także Eclipse.
Zdalne i lokalne uruchamianie aplikacji X innego użytkownika
Napisany przez Przemek w administracja, programowanie dnia 21 sierpnia 2009
W sumie cały problem z odpalaniem aplikacji X-owych rozbija się najczęściej o .Xauthority
(szczegóły: man xauth
).
Łącząc się zdalnie przez ssh
należy dodać opcję -X
, aby dane X-serwera były przesyłane, czyli
ssh -X user@host
W razie problemów z połączeniem
xhost +
zezwoli na połączenie z X wszystkim użytkownikom (dla bezpieczeństwa zerknij na manual).
Niestety X-y bardzo obciążają łącze. Polecam NX Serwer. Nieźle przyspiesza, bo kompresuje transmisję, prawie dziesięciokrotnie zmniejszając transfer danych, a co za tym idzie polepsza komfort pracy (nie zacina się tak). Da się przez komórkę połączyć (jako modem), sprawdzałem. Po instalacji opalamy
sudo /etc/init.d/nxserver start
Btw,Google ostatnio zaangażował się w podobne rozwiązanie Neatx, ciekawe co z tego będzie, mam nadzieje że ni ubiją przy tym Nomachine.
Lokalnie
NX sprawdza się dobrze również lokalnie, ale zawsze to jakieś spowolnienie. Normalnie wystarczyłoby su nazwaużytkownika
, ale niestety napotyka ten sam problem ze zmiennymi środowiskowymi. Pewnie przez declare -x XAUTHORITY="/home/mojekonto/.Xauthority"
. Program sux
naprawia ten problem (i jakieś inne pewnie też. Tutaj inne rozwiązanie).
sux inny_użytkownik
Po tym już można odpalać aplikacje X-owe. Dla różnych użytkowników można ustawić inne zmienne środowiskowe, inną javę itp. i szybko odpalić sobie z terminala ich IDE i działać. Bez przełączania użytkowników, wyłączania komunikatorów, wychodzenia z własnego desktopu itp.
Parę słów o szyfrowaniu i bezpieczeństwie
Napisany przez Przemek w programowanie dnia 9 marca 2009
Jak przekazać bezpiecznie login, hasło i treść? Poniższy tekst przedstawia główne mechanizmy wykorzystywane do bezpiecznej komunikacji. Ogólną zasadę działania szyfrowania symetrycznego i związek z generatorem liczb pseudolosowych, funkcję skrótu (hash) oraz zasadę działania i wykorzystanie szyfrowania asymetrycznego w protokołach hybrydowych.
Hurtowa konwersja zdjęć
Napisany przez Przemek w administracja, programowanie dnia 13 grudnia 2008
Image magick dostarcza cały zestaw konsolowych programów przydatnych do obróbki zdjęć. Dziś zaszła potrzeba przerobienia całej masy fotek z kilkunastu katalogów. Chciałem przeskalować zdjęcia do rozmiaru 400×400 i zachować oryginalne źródła, więc posłużyłem się programem convert.