Politechnika Opolska. PRACA DYPLOMOWA Studia pierwszego stopnia stacjonarne REALIZACJA PARSERA WYRAŻEŃ MATEMATYCZNYCH NA PLATFORMIE ANDROID
|
|
- Nina Morawska
- 9 lat temu
- Przeglądów:
Transkrypt
1 Politechnika Opolska Wydział Elektrotechniki, Automatyki i Informatyki Instytut Układów Elektromechanicznych i Elektroniki Przemysłowej PRACA DYPLOMOWA Studia pierwszego stopnia stacjonarne Informatyka REALIZACJA PARSERA WYRAŻEŃ MATEMATYCZNYCH NA PLATFORMIE ANDROID Promotor: dr inż. Grzegorz Paweł Korbaś Pracę wykonał: Wojciech STEC nr albumu: Opole, grudzień 0
2 REALIZACJA PARSERA WYRAŻEŃ MATEMATYCZNYCH NA PLATFORMIE ANDROID S T R E S Z C Z E N I E W pracy przedstawiony został opis realizacji oraz sposób działania parsera wyrażeń matematycznych, na podstawie programu oraz biblioteki własnego autorstwa, napisanych w języku Java oraz skompilowanych pod platformę mobilną Google Android. Program, który można uruchomić wyłącznie na maszynie wirtualnej Javy działającej na systemie operacyjnym Google Android jest tylko nakładką graficzną, zawierającą edytor wyrażeń matematycznych oraz klawiaturę numeryczną, na bibliotekę, która pełni tutaj główną rolę całego systemu zawierając w sobie wszelkie funkcje matematyczne i jest w pełni przenośna na każdą platformę oraz system operacyjny. PARSER IMPLEMENTATION OF MATHEMATICAL EX- PRESSIONS ON ANDROID PLATFORM S U M M A R Y This document presents a description and how work the mathematical expression parser based on the program and the library own authorship, written in Java and compiled into Google Android platform. A program that can be run exclusively on a Java virtual machine running on Google's Android platform is just a graphical frontend to the library, which serves here as a really key role the entire system and is fully portable to any platform and operating system.
3 SPIS TREŚCI. CEL I ZAKRES PRACY WSTĘP NARZĘDZIA ORAZ ŚRODOWISKO PROGRAMISTYCZNE ANDROID SDK PROGRAM ECLIPSE JĘZYK PROGRAMOWANIA JAVA SYSTEM OPERACYJNY ANDROID WIRTUALIZACJA ŚRODOWISKA ANDROID PROJEKT KALKULATOR PLUS ISTNIEJĄCE ROZWIĄZANIA PROJEKT INTERFEJSU UŻYTKOWNIKA MENU GŁÓWNE APLIKACJI KONFIGURACJA PROGRAMU OKIENKO INFORMACYJNE OKNO HISTORIA ORAZ OBSŁUGIWANE FUNKCJE BIBLIOTEKA OBLICZENIA OKNO GŁÓWNE APLIKACJI PODSUMOWANIE LITERATURA
4 . CEL I ZAKRES PRACY Celem pracy jest stworzenie programu oraz biblioteki na mobilną platformę Google Android, wykonywujących podane przez użytkownika dane wejściowe oraz wyświetlenie wyniku w postaci graficznej, jak i listy kolejnych wykonanych obliczeń. Dane nie muszą być prawidłowym wyrażeniem matematycznym, ponieważ jedną z dodatkowych funkcji biblioteki będzie znalezienie oraz zaznaczenie użytkownikowi popełnionych błędów. Biblioteka programu będzie całkowicie napisana w języku Java, dzięki czemu będzie między-platformowa i będzie można ją umieszczać w projektach napisanych dla każdego systemu operacyjnego (mającego zainstalowaną własną maszynę wirtualną Javy). Zostanie ona w przyszłości udostępniona innym programistom wraz z jej specyfikacją, dzięki czemu w łatwy sposób będą ją mogli implementować w swoich projektach. Program będzie komunikował się z biblioteką w celu przesłania jej wpisywanych przez użytkownika wyrażeń, a w zamian będzie oczekiwał zwrócenie graficznej interpretacji wyrażenia zawierającej wyniku (w przypadku, gdy wyrażenie będzie skończone oraz prawidłowe), wskazania ewentualnych miejsc, w których znajdują się błędy oraz osobnej tablicy, zawierającej listę kolejnych wykonanych obliczeń, które następnie będzie można zapisać do pliku tekstowego i przekazać do innego urządzenia. 4
5 . WSTĘP W dzisiejszych czasach rozwiązanie skomplikowanych obliczeń łatwiej jest wykonać za pomocą kalkulatorów, niż pisemnie za pomocą kartki oraz długopisu. Istnieją różne rodzaje kalkulatorów, od tych popularnych, służących do domowego użytku zawierających jedynie cztery podstawowe typy działań dodawanie, odejmowanie, mnożenie i dzielenie, aż do naukowych, zawierające możliwość wykonywania skomplikowanych działań czy wykresów obliczonych funkcji. Autor nie spotkał się do tej pory z klasyfikacją innego typu kalkulatorów, a mianowicie wyświetlającego kroki wykonanych działań. Jest to opcja przydatna szczególnie uczniom (oraz w niektórych wypadkach studentom), którzy korzystają z kalkulatora jako narzędzia do rozwiązywania zadań bez znajomości podstawowych zasad matematycznych, takich jak chociażby kolejność wykonywania działań, czy wzory skróconego mnożenia. W programie Kalkulator Plus zostaną wdrożone różne funkcje matematyczne, które obowiązują na maturze (wg. książki [3]). Właśnie z powodu największego zainteresowania takim typem programów przez osoby uczące się, można by bez problemu taki typ programu nazwać szkolnym. Autor nie spotkał z żadnym urządzeniem, które mogłoby obliczać samodzielnie wyrażenia, prawdopodobnie z powodu ilości pamięci instalowanych w dotychczas znanych urządzeniach typu kalkulator. Istnieją już natomiast strony internetowe, umożliwiające wykonywanie takich działań. Niestety tutaj pojawia się problem mobilności, ponieważ do obsługi tych stron potrzebne jest połączenie z Internetem, a co najważniejsze posiadanie komputera, co wyklucza całkowicie mobilność. Można by skorzystać z laptopa wtedy o mobilności możemy mówić, lecz takie rozwiązanie będzie nieodpowiednie dla uczniów, próbujących wykonywać obliczenia na lekcjach w szkole. Istniejące na rynku smartfony w teorii mogły by umożliwiać otwieranie takich stron w swoich przeglądarkach Internetowych, lecz są one napisane w różnych językach programowania (jak np. Java), do obsługi których nawet telefony potrzebują specjalnych wtyczek (ang. Plug-ins). Można się natknąć na aplikacje pośredniczące w przekazywaniu wpisanych przez użytkownika wyrażeń do aplikacji Internetowej, lecz tutaj pojawia się problem z połączeniem Internetowym, które nie zawsze jest dostępne, a nawet jeśli, to odebranie wyniku może wiązać się z dosyć dużymi dodatkowymi kosztami. Najlepszym w tym wypadku rozwiązaniem jest program, który umożliwia wykonywanie większości problemów matematycznych bez konieczności połączenia z Internetem, na urządzeniu o niewielkich rozmiarach i bez potrzeby korzystania z ogromnej ilości pamięci i działający na wszystkich dotychczas wyprodukowanych urządzeniach mobilnych i udostępniający dodatkowe funkcjonalności dla programistów tworzących podobne rozwiązania, dlatego autor zdecydował się na platformę mobilną Google Android. 5
6 3. NARZĘDZIA ORAZ ŚRODOWISKO PROGRAMI- STYCZNE W niniejszym rozdziale zostały opisane wykorzystane narzędzia programistyczne wraz z językiem programowania oraz środowiskiem uruchomieniowym pisanych aplikacji. Autor niniejszej pracy nie miał wyboru języka programowania pod system Android, ponieważ Java jest jedynym oficjalnie wspieranym językiem. Wszelkie programy uruchamiane na systemie Android są uruchamiane w osobnych wirtualnych maszynach, które interpretują jedynie język Java. Istnieją już oczywiście próby napisania aplikacji, którą będzie tłumaczyła kod napisany w innym języku na kod Javy, a następnie na język wirtualnej maszyny, lecz jeżeli sama Java jest wolna, to takie rozwiązanie będzie katastrofą. W każdym razie, takie rozwiązania nie są wspierane przez Google, twórcę systemu Android. Zanim będzie możliwość zainstalowania niżej wymienionych narzędzi, należy zaopatrzyć się w JDK (ang. Java Development Kit) w wersji co najmniej 5, którą można pobrać z oficjalnej strony Sun Java 3. Pakiet ten jest potrzebny, ponieważ wszystkie narzędzia napisane zostały właśnie w tym języku, w przeciwnym wypadku nie będziemy mogli zainstalować żadnego z nich. 3.. ANDROID SDK Android SDK (ang. Software Development Kit) jest jednym z podstawowych narzędzi, które należy zainstalować przed rozpoczęciem pracy z programem Eclipse i pisaniem aplikacji pod system Android. Znajduje się tam między innymi odpowiedni kompilator, dzięki któremu będzie możliwe uruchomienie aplikacji w jej naturalnym środowisku. Instalacja i konfiguracja tego pakietu sprowadza się jedynie do pobrania jego pliku instalacyjnego (lub spakowanego archiwum) z oficjalnej strony oprogramowania 4 i uruchomienie go. 3.. PROGRAM ECLIPSE Eclipse jest platformą typu framework napisaną w języku Java, którą można uruchomić na praktycznie każdym systemie operacyjnym, posiadającym zainstalowaną wirtualną maszynę Java (która rozpowszechniana w tym momencie jest na praktycznie każdym systemie operacyjnym). Schemat aplikacji został przedstawiony na Rys
7 Rys 3. Schemat interfejsu aplikacji Eclipse Sama aplikacja nie dostarcza żadnych narzędzi służących do tworzenia kodu i budowania aplikacji, oferuje jednak obsługę wtyczek rozszerzających jej funkcjonalność, umożliwiających m.in. rozwijanie aplikacji w językach Java, C/C++, PHP, tworzenie GUI (ang. Graphical User Interface, pol. Graficzny Interfejs Użytkownika) i wiele innych. Deweloperzy zadbali o to, aby aplikacja była dostarczona w takiej formie, jakiej użytkownicy od niej oczekują, a mianowicie przygotowane są odpowiednie paczki instalacyjne zawierające wszystkie potrzebne narzędzia do rozpoczęcia pracy z wybranym językiem programowania, takie jak kompilatory i sprawdzanie poprawności kodu. Dla celów pisania niniejszej pracy, autor pobrał z oficjalnej strony internetowej projektu Eclipse wersję programu Eclipse IDE for Java Developers, która standardowo zawiera wszelkie wtyczki potrzebne do pisania aplikacji w języku Java. Środowisko jest gotowe do pisania aplikacji w języku Java, lecz pod systemy desktopowe. W celu rozpoczęcia pracy nad tworzeniem oprogramowania pod system mobilny Android, należy pobrać dodatkową wtyczkę ADK (ang. Android Development Kit), który znacznie ułatwia pisanie takich aplikacji, ponieważ posiada m.in. narzędzia do debugowania (ang. debugging, pol. odrobaczanie, tutaj: usuwanie błędów) oraz do tworzenia graficznego interfejsu użytkownika. W celu przystąpienia do pobrania ADK, należy w programie Eclipse otworzyć menu Help i wybrać opcję Install New Software.... W nowym oknie, w polu Work with: należy wpisać adres internetowy ( do wtyczki ADK i zatwierdzić klawiszem Enter. Po chwili zostanie pobrana lista oprogramowania dostępnego pod podanym adresem internetowym (taka, jak widoczna na Rys 3.). Rys 3. Lista wtyczek oraz ich wersji dostępnych do pobrania, znajdujących się pod wpisanym adresem serwera internetowego 7
8 Po zakończeniu pobierania najlepiej zrestartować program Eclipse, a po ponownym uruchomieniu skonfigurować odpowiednio pobrane wtyczki. W tym celu należy w menu Window wybrać opcję Preferences i w sekcji Android wpisać ścieżkę do zainstalowanego SDK Androida w polu SDK Location JĘZYK PROGRAMOWANIA JAVA Obiektowy język programowania Java został stworzony w firmie Sun Microsystem (została ona przejęta przez firmę Oracle w 00 roku) głównie przez Jamesa Goslinga i przedstawiony światu w 995 roku razem z JVM (ang. Java Virtual Machine, pol. Maszyna Wirtualna Java). Język ten został stworzony zapożyczając niektóre jej elementy składni z popularnego C++ 5, natomiast sposób uruchamianie, tzn. poprzez maszynę wirtualną czy sposób automatycznego zwalniania pamięci ze Smalltalk 6. Od początku firma Sun wyznaczyła najważniejsze cechy Javy jako platformy: - powinien być prosty w użyciu, z "przyjazną" składnią, - powinien bezpieczny i "solidny", - powinien być neutralny architektonicznie i łatwy w rozszerzeniu, - powinien zapewniać wysoką wydajność, - powinien być interpretowany, wielowątkowy i dynamiczny. Język faktycznie posiada składnię uproszczoną w stosunku do C++. Autorzy zrezygnowali również z podwójnej możliwości dostępu do zmiennych, tzn. przez wartość i referencję stosując przekazywanie obiektów przez referencję. Java została zaopatrzona w kilka mechanizmów zabezpieczających programistów przed najczęściej popełnianymi błędami. Jednym z nich jest automatyczne zwalnianie pamięci, dzięki czemu programista nie musi pamiętać o usuwaniu nieużywanych obiektów. Kolejnym jest sposób obsługi wyjątków i wydzielenie grupy wyjątków wymaganych do obsłużenia przez programistę. Ostatnim istotnym elementem jest tzw. security policy (pol. polityka bezpieczeństwa) czyli zestaw uprawnień pozwalających na definiowanie uprawnionych działań dla programów na danej JVM. Hasłem reklamowym Javy było "napisz raz uruchom wszędzie" (ang. Write once, run anywhere 7, WORA). Jest to faktycznie ogromna zaleta tego języka, ponieważ rozgraniczone zostały elementy platformy systemowej od elementów dostępnych bez konieczności wywołań systemowych. Ograniczyło to także ilość kodu, który trzeba implementować w zależności od platformy, na której program jest wykonywany. Teoretycznie implementacja wirtualnej maszyny JVM powinna wymagać tylko systemowych funkcji I/O (ang. Input / Output, pol. Wejście / Wyjście), lecz w praktyce implementowane są również niektóre operacje, takie jak Math.sqrt(). Na samym początku nowo utworzony język był uważany z prosty i powolny i wymagający dużej ilości pamięci do wykonywania, jednak w późniejszym czasie głównie poprzez kompilatora JIT 8 (ang. Just In Time) w kolejnych aktualizacjach spowodowano, iż Java stała się językiem w którym niektóre problemy programistyczne można było rozwiązać w znacznie prostszy sposób niż w C, jednak nadal Java nie należy do najszybciej interpretowanych języków w informatyce
9 System Android został tak naprawdę wyposażony w maszynę wirtualną Dalvik 9, a nie tak jak na innych systemach JVM. Dalvik jest zbudowany w bardzo podobny sposób, co JVM, lecz używa innej składni kodu bytowego. Jest ona napisana tak, aby działała prawidłowo na urządzeniach z małą ilością pamięci RAM oraz słabymi procesorami, aby płynność wczytywania i działania takich aplikacji nie odbiegała zbyt daleko od tych, które są pisane pod komputery klasy PC. Taki stan rzeczy nie podoba się firmie Oracle, aktualnemu właścicielowi Javy która twierdzi (zresztą słusznie), iż Google pozbawiło jego produkt przenośności i wieloplatformości, ponieważ aplikacji napisanych pod Android nie można uruchomić na żadnym innym urządzeniu, posiadającym JVM SYSTEM OPERACYJNY ANDROID Google Android jest systemem operacyjnym o otwartym kodzie źródłowym stworzonym dla urządzeń mobilnych, takich jak telefony komórkowe oraz tablety, aktualnie rozwijany przez firmę Google. System jest bardzo młody został zaprojektowany w 005 roku przez mało znaną firmę o takiej samej nazwie, jaką nadano teraz stworzonemu systemowi. Pierwsza publiczna wersja tego systemu wraz z pierwszym obsługującym go systemem została wydana 30 kwietnia 009 roku również w Polsce w tym samym czasie. System stale zyskuje coraz większą popularność, ponieważ coraz więcej urządzeń jest w niego wyposażanych. Według raportu 0 opublikowanego przez Grupę NPD, w zeszłym roku udział systemu Android w rynku telefonów klasy smartfon wynosił 8% i był większy niż udział iphone a (%), natomiast w lipcu tego roku statystycznie urządzeń z systemem od Google na rynku jest aż 4%. Rys 3.3 Architektura systemu Android. Źródło : 9 [5] Dalvik Virtual Machine. [Dostęp 7 grudnia 0]
10 Struktura systemu Android została zbudowana z kilku warstw, które zostały przedstawione na Rys 3.3. Budowa taka jest prawdopodobnie spowodowana tym, iż jest on stworzony w oparciu o system Linux, którego struktura wygląda bardzo podobnie. Wszystkie dotychczas oficjalnie wydane wersje systemu Android bazują na jądrze systemu Linux w wersji.6, które na potrzeby nowego systemy zostało wzbogacone przede wszystkim o pełną obsługę sieci GSM, o specyficzne sterowniki dla urządzeń telefonicznych, a także o zaawansowany mechanizm komunikacji między-procesorowej. Na systemie tym została zainstalowana wirtualna maszyna Dalvik, która jest wersję zoptymalizowaną na systemy mobilne wirtualnej maszyny Javy. Maszyna Dalvik jest tak napisana, aby na urządzeniu mogło efektywnie pracować wiele kopii tej maszyny. Jest to także zbiór bibliotek i interfejsów programistycznych, które mogą zostać wykorzystane przez programistów Java. Framework dostarczony wraz z systemem daje dostęp do wielu elementów systemu takich jak informacje o urządzeniu, lokalizacji, alarmów czy powiadomień. System Android jest to także zbiór aplikacji, które dystrybuowane są w formie pakietów.apk. Aplikacje pisane są w języku Java i uruchamiane w osobnych procesach w maszynach wirtualnych Dalvik co jest bezpiecznym posunięciem, ponieważ osobne instancje wirtualnej maszyny uniemożliwiają dostępu jednej aplikacji do pamięci drugiej. Jeżeli chodzi o architekturę, to aplikacje są tak naprawdę zbiorami komponentów, zarządzanych przez system. Najważniejszym z nich są tzw. Activities. Termin Activity można rozumieć jako wyświetlany ekran w aplikacji. Do niego przypisuje się widoki (komponenty View), które zawierają zbiór innych kontrolek tworzących interfejs graficzny dla użytkownika programu. To właśnie Activity decyduje, który z widoków jest aktualnie wyświetlany na ekranie urządzenia. Obiekty widoków można tworzyć zarówno w kodzie jak i przy pomocy szablonów <?xml version=".0" encoding="utf-8"?> <manifest xmlns:android=" package="pl.weer.kalkulator" android:versioncode="4" android:versionname="0.0..7"> <uses-sdk android:minsdkversion="0" /> <uses-permission android:name="android.permission.write_external_storage"/> <application android:icon="@drawable/icon" android:label="@string/app_name" android:debuggable="true"> <activity android:name=".kalkulatoractivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:name=".mypreferences" android:label="@string/app_name" /> </application> </manifest> Listing 3. Plik AndroidManifest.xml, który odpowiada w programie Kalkulator Plus za najważniejsze ustawienia aplikacji 0
11 Tworzenie interfejsu użytkownika przypomina w tym drugim przypadku bardziej tworzenie stron HTML niż programowanie interfejsu w Javie znane z bibliotek takich jak Java Swing. Szablony te zapisywane są w plikach XML i dostępne są jako zasób w naszej aplikacji. Każda aplikacja musi posiadać plik Manifest, który służy do wyspecyfikowania z jakich komponentów składa się aplikacja, który z nich powinien zostać uruchomiony po włączeniu aplikacji oraz jakich specjalnych uprawnień wymaga aplikacja (spis uprawnień dostępny jest także w [] oraz []). Przedstawiony w powyższym listingu (Listing 3.) został plik manifest używany w aplikacji Kalkulator Plus. Oprócz opisanej wyżej zawartości, posiada on także informacje na temat wersji aplikacji (linijka 5), czy minimalnej wersji systemu Android, w której aplikacja może pracować (linijka 6), nazwę aplikacji i jej ikonę (linijka 9-0, stałe app_name oraz icon) oraz listę activity, które posiada aplikacja wraz z ich nazwami (linijki 0 8). W linijce siódmej został dodany element, który odpowiedzialny jest za przydzielanie aplikacji odpowiednich uprawnień 3. Użyta tutaj stała odpowiedzialna jest za możliwość zapisywania danych na zewnętrznej karcie pamięci. Podczas instalacji aplikacji zostaje wyświetlone okienko z listą uprawnień, z których chce skorzystać aplikacja (Rys 3.4). Rys 3.4 Instalacja aplikacji Kalkulator Plus wykaz uprawnień, do których aplikacja chce mieć dostęp Dodanie listy uprawnień do aplikacji jest czynnością bardzo ważną, ponieważ bez tego aplikacja się zainstaluje, a nawet uruchomi, lecz dostęp do funkcji, która wymaga uprawnień będzie nie możliwe, a aplikacja nawet o tym nie poinformuje. Jest to bardzo dobra funkcja systemu, ponieważ żadna aplikacja nie ma dostępu do ważnych ustawień i danych w telefonie bez świadomego pozwolenia samego użytkownika programu. 3
12 4. WIRTUALIZACJA ŚRODOWISKA ANDROID Wirtualizacja środowiska Android jest potrzebna twórcy oprogramowania, który chce przetestować napisaną aplikację w różnych środowiskach systemu przy różnych konfiguracjach, nie posiadając fizycznych urządzeń spełniających jego wymagań. Twórca zazwyczaj posiada tylko jedno urządzenie, na którym testuje prawdziwe zachowanie aplikacji, ponieważ emulatory nigdy nie zastąpią prawdziwego połączenia telefonicznego, wysłania smsa czy połączenie z GPS. Za taki stan rzeczy odpowiada brak środków finansowych początkujących programistów oraz różnorodność urządzeń, które pojawiły się i wciąż pojawiają się na rynku. Każde z nich posiada inną rozdzielczość ekranu (także inny jego rozmiar co sprawia, że dwa ekrany o tych samych rozdzielczościach lecz o różnych wielkościach zupełnie inaczej są obsługiwane), inny procesor i wersję systemu operacyjnego. Okazuje się jednak, iż nie tylko z powodu braku odpowiednich urządzeń wykorzystuje się emulatory. Mogą się one także przydać podczas prezentacji napisanego oprogramowania, ponieważ nie wszystkie smartfony posiadają wyjścia cyfrowe wideo, a jeżeli już posiadają to nie wszystkie urządzenia wyświetlające obraz posiadają odpowiednie wejścia cyfrowe. W urządzeniach z androidem stosuje się wyjścia HDMI typu D 4, więc urządzenia wyświetlające muszą posiadać również wejście HDMI dowolnego typu (przy zastosowaniu tzw. przejściówki). Zestaw oprogramowania służącego do pisania programów na platformę Android zawiera między innymi emulator tego środowiska[5], który jest niestety bardzo powolny, co jest jego największym minusem. Jest on jednak bardzo dobrym rozwiązaniem dla programistów, którzy tworzą duże oprogramowanie, które docelowo powinno działać na wszelakiej maści urządzeniach o różnych rozdzielczościach ekranu, mocy procesorów oraz układach graficznych. Emulator ten pozwala utworzyć różne profile reprezentujące różne modele telefonów z ich indywidualnymi konfiguracjami oraz z różnymi wersjami systemu Android. Aktualnie obsługuje aplikacje napisane pod Android wersję 4.0. (najnowszy ROM). Kolejną metodą emulacji dowolnej wersji systemu Android znalezioną przez autora, jest pobranie odpowiedniego ROMu ze strony[6] i zainstalowanie go na dysku komputera, bądź na wirtualnej maszynie. Na podanej stronie znajdują się wersje systemu Android od.6 do 4.0., które zostały zoptymalizowane pod procesory x86 i są gotowe do zainstalowania na nich. Niektóre zostały przeportowane na odpowiedni sprzęt, np. na netbooki z rodziny ASUS Eee PC i ma standardowo zainstalowane wszystkie sterowniki, które są potrzebne do korzystania ze wszystkich funkcji tego systemu operacyjnego. Minusem tego rozwiązania jest to, iż nadal jest to wirtualna maszyna (bądź instalacja na dysku twardym, bez możliwości przełączania się do systemu Windows, w celu wgrania odpowiednich aplikacji na tenże emulator) i nie działa z taką wydajnością, z jaką pracuje oryginalny system na urządzeniu fizycznym. Kolejnym przetestowanym przez autora emulatorem był program YouWave[7], który niestety jest płatny, lecz można go testować za darmo przez 30 dni. Niestety, obsługuje on tylko system Android w wersji.3, co dla developerów jest dużym problemem. Dla autora był by to odpowiedni emulator gdyby nie fakt, że jest to nic innego jak nakładka na popularny program do emulacji wirtualnych systemów operacyjnych Oracle VirtualBox. Co prawda 4 [4] HDMI Micro Connector, oficjalna strona twórcy standardu. [dostęp 4 grudnia 0]
13 został zmodyfikowany specjalnie dla testowania aplikacji w ten sposób, iż posiada pasek z dostępnymi aplikacjami, które można uruchomić po dwukrotnym kliknięciu na nie. Zostaną wtedy załadowane do wirtualnej maszyny, lecz nadal pozostaje problem iż jest to powolna, wirtualna maszyna oraz co gorsza jest to płatna wersja. Ostatnim testowanym rozwiązaniem była aplikacja o nazwie Bluestack App Player[8]. Jest ona zupełnie innego typu niż pozostałe, ponieważ nie jest to wirtualna maszyna ani emulator całego systemu operacyjnego. Jest to po prostu program instalowany pod Microsoft Windows 7 (jak na razie tylko na ten system operacyjny), który zawiera wszystkie potrzebne biblioteki do uruchamiania programów napisanych w Javie i skompilowanych pod platformę Android. Po instalacji aplikacja zawiera preinstalowanych programów, które uruchamiają się bardzo szybko i pracują bardzo płynnie, a są wśród nich również gry wymagające od urządzenia dużej mocy obliczeniowej. Minusem tego rozwiązania jest sposób instalacji nowych programów, ponieważ aby to uczynić, musimy mieć wcześniej zainstalowaną daną aplikacje na urządzeniu fizycznym, pracującym pod kontrolą systemu Android w dowolnej wersji. Powinniśmy także pobrać ze sklepu Android aplikację o nazwie BlueStacks Cloud Connect[9], która będzie pośredniczyła między wymianą aplikacji pomiędzy systemem Android a programem BlueStacks App Player. Po uruchomieniu aplikacji na mobilnym systemie, zostaniemy poproszeni o podanie kodu PIN do aplikacji. W celu jego uzyskania, należy wejść na stronę[0] i przejść na zakładkę Cloud Connect (pol. połączenie przez chmurę 5 ), gdzie zostanie on dla nas wygenerowany. Po wpisaniu go na urządzeniu przenośnym, zostaniemy przeniesieni do listy aplikacji zainstalowanych w naszym systemie. Po zaznaczeniu potrzebnych aplikacji należy kliknąć przycisk Synchronize (pol. synchronizuj) i odświeżyć stronę internetową, gdzie po chwili pokażą się wybrane przez nas aplikacje. Teraz już wystarczy wybrać przy nich przycisk Subscribe (pol. subskrybuj), a po chwili zostaną przesłane do aplikacji zostanie to potwierdzone poprzez wyświetlenie dymku z odpowiednią informacją na pulpicie systemu Windows w obszarze powiadomień, obok zegarka. Po uruchomieniu aplikacji na komputerze, aplikacja zostanie automatycznie załadowana do listy aplikacji i będzie możliwe jej uruchomienie poprzez kliknięcie na niej myszką. Wszystkie aplikacje w programie BlueStacks App Player uruchamiane są w trybie landscape (pol. tryb krajobrazowy, pozioma orientacja ekranu) i jak na razie nie można zmienić tego stanu rzeczy. Być może zmieni się to w końcowej wersji aplikacji, ponieważ aktualna jest tylko w fazie Alpha 6 i działa jedynie na systemach Windows. Program BlueStacks App Player wykonuje aplikacje bardzo płynnie i wydaje się, iż jest on na ten moment najlepszym programem do uruchamiania aplikacji napisanych dla systemu Android. Co prawda, w żadnym miejscu na stronie, ani w specyfikacji aplikacji nie jest napisane, pod jakie wersje systemu Android muszą być napisane uruchamiane aplikacje, lecz autor nie spotkał się z nieprawidłowo działającą emulowaną aplikacją w programie Blue- Stacks App Player, dlatego jego wybór padł właśnie na ten program. 5 [] Mariusz Kędziora: co to jest chmura (Cloud Computing)? 8 maja 00. [dostęp 4 grudnia 0] 6 [] Wikipedia: Cykl życia programu. [dostęp 4 grudnia 0] 3
14 5. PROJEKT KALKULATOR PLUS Projekt został stworzony spełniając zadane wcześniej cele i założenia pracy, na które składają się przede wszystkim łatwość i szybkość obsługi, możliwie jak największa liczba docelowych urządzeń oraz darmowy dostęp do aplikacji i udostępnianych przez niej bibliotek, ponieważ użytkownikami docelowymi z założenia powinni być przede wszystkim osoby uczące się. Aplikacja została zaprojektowana tak, aby można ją było uruchomić na smartfonach pracujących pod kontrolą systemu Google Android, ponieważ w ostatnich czasach jest to najpopularniejszy system mobilny[4], dzięki czemu zostanie spełnione główne założenie, jakim jest dostępność dla jak największej liczby użytkowników. Google wraz z wydawaniem kolejnych wersji systemu operacyjnego zwiększa stabilność oraz szybkość jego pracy, tak więc docelową wersją systemu, pod którym będzie pracowała aplikacja jest wersja.3.x o nazwie Gingerbread 7 (pol. - piernik), oraz nowsze. 5.. ISTNIEJĄCE ROZWIĄZANIA Próżno szukać w Internecie aplikacji matematycznych, które pokazują krok po kroku jak rozwiązać dane wyrażenie. Można znaleźć co najwyżej jedną stronę Internetową, spełniającą ten warunek, lecz interfejs graficzny jest bardzo mało intuicyjny, a edytor wyrażeń i obsługiwane funkcje również nie powalają na kolana. Strona ta nazywa się Poolicz.pl, oraz ma swój odpowiednik dla zagranicznych użytkowników solver.com. Jednak wyświetlanie kolejnych kroków obliczeń jest tylko dodatkową opcją projektu Kalkulator Plus. Główną funkcją jest odpowiednie przetwarzanie wyrażeń matematycznych i podawanie prawidłowego wyniku tutaj konkurencja już jest ogromna. Przykładem może być tutaj chociażby najpopularniejsza wyszukiwarka internetowa - Google, która bardzo dobrze radzi sobie z rozwiązywaniem równań matematycznych. Kolejnym przykładem, może być program Wolfram Mathematica 8, który jest potężnym narzędziem służącym do wykonywania zaawansowanych obliczeń naukowych. Możemy do tej listy dodać także program Matlab 9 z jego wieloma dodatkowymi modułami rozszerzającymi jego funkcjonalność. Przytoczone programy mają kilka minusów w pierwszym wypadku potrzebny jest dostęp do Internetu, a w dwóch pozostałych dostęp do komputera. Oczywiście te ostatnie są programami płatnymi, a ich funkcje są aż za bardzo zaawansowane dla zwykłego użytkownika, który ich po prostu nie będzie używał. Nikt nie chce kupować produktów, z których w większej części nawet nie skorzysta. Przytoczone dotychczas programy są rozwiązaniami stacjonarnymi, niemającymi swoich odpowiedników na urządzenia mobilne. Na urządzenia z Google Android jest dostępnych mnóstwo programów do obliczeń, lecz posiadając one zbyt mało funkcji, niektóre funkcje w ogóle nie działają, a niektóre programy nie są aktualizowane od wieków co sprawia, że posiadają wiele znalezionych już przez użytkowników błędów. Jeśliby połączyć zalety wszystkich tych programów, to było by wtedy nad czym dyskutować, niestety tak się nie da. Większość 7 [3] Wikipedia. Android version history. [dostęp 4 grudnia 0]
15 dostępnych programów jest płatnych, tak więc można albo wszystkie kupić, ale ściągnąć z Internetu pirackie wersje, co jest niezgodne z prawem. Istnieje jeszcze jeden typ kalkulatorów, a mianowicie kalkulatory jako samodzielne urządzenia. Głównymi ich wadami jest cena, która często jest dosyć wysoka, wymiary, które są bardzo duże, brak możliwości dodawania nowych funkcji, przez co trzeba kupować coraz to nowsze urządzenia, aby móc korzystać z nowszych funkcji. 5.. PROJEKT INTERFEJSU UŻYTKOWNIKA Interfejs użytkownika powstał z myślą o jak najbardziej intuicyjnej możliwości obsługi programu. Posiada edytor wyrażeń matematycznych, który był wzorowany na przeglądniętych programach na PC oraz Android i programową klawiaturę numeryczną. W związku z różnymi typami urządzeń, na które docelowo ma działać aplikacja, różniącymi się między sobą rozdzielczościami ekranu oraz tym, czy posiadają klawiaturę czy nie, a także szybkością procesora, aplikacja musi zajmować bardzo mało pamięci w telefonie i umieć dostosować się do odpowiedniej rozdzielczości oraz orientacji ekranu. Na poniższym rysunku (Rys 5.) został przedstawiony podstawowy wygląd aplikacji, uruchomionej na fizycznym urządzeniu. Rys 5. Wygląd okna głównego aplikacji Kalkulator Plus, pokazujący się standardowo chwilę po jej uruchomieniu na smartfonie w orientacji pionowej. Edytor wyrażeń matematycznych to fragment ekranu, który odpowiedzialny jest za wyświetlanie wprowadzonych przez użytkownika cyfr oraz funkcji zadeklarowanych w programie Kalkulator Plus (Rys 5.). Edytor posiada znak zachęty koloru zielonego, który informuje użytkownika o pozycji i możliwości wpisania kolejnej wartości z wirtualnej klawiatury, wbudowanej w program. Dodatkową funkcją edytora wyrażeń matematycznych jest informowanie użytkownika o niezamkniętych nawiasach, bądź błędnie wpisanych wyrażeniach. W przypadku pojawienia się w edytorze jakiegoś błędu (kolorem czerwonym), bądź ostrzeżenia (kolorem zielonym), nie jest możliwe pokazania wyniku działania wpisanego wyrażenia matematycznego, dzięki czemu aplikacja jest odporna na błędy użytkowników i nie wyświetla błędnych wyników. 5
16 Rys 5. Edytor wyrażeń matematycznych z programu Kalkulator Plus, uruchomionego na urządzeniu fizycznym w orientacji pionowej. Program zaznacza następujące błędy, napisane przez użytkownika: - rozpoczęcie wyrażenia wpisując znak +, *,!, bądź /, - wpisanie dwukrotnie tego samego znaku, bądź dwóch różnych znaków, które nie są oddzielone między sobą żadną cyfrą, - wpisanie znaku końca nawiasu zaraz po wpisaniu znaków +, -, *, \, bądź po otwarciu nawiasu, - nie wpisanie, bądź wpisanie złej liczby argumentów do którejś z otwartych funkcji. Ostrzeżenia zostaną wyświetlone, gdy : - użytkownik otworzy nawias, lecz go nie zamknie, - ostatnim wpisanym znakiem będzie +, -, * bądź /. Rys 5.3 Programowa klawiatura zaprezentowana w widoku pionowym aplikacji. Klawiatura jest widoczna przez cały czas działania aplikacji (tylko w trybie wpisywania wyrażeń). 6
17 Na tym samym ekranie, po wprowadzeniu wszystkich obliczeń i przyciśnięciu odpowiedniego przycisku na wirtualnej klawiaturze, zostają wyświetlane obliczenia wykonane krok po kroku, aż do wyprowadzenia pełnego wyniku. Wirtualna klawiatura (Rys 5.3), która została wbudowana w program Kalkulator Plus służy do wpisywania wyrażeń matematycznych przez użytkownika. Jest skonstruowana tak, aby nie zasłaniała całego ekranu, żeby w widoku poziomym oraz pionowym wszystkie klawisze były widoczne oraz aby nie było żadnych problemów przy wpisywaniu kolejnych cyfr. Jej funkcje zmieniają się w zależności od tego, jaką funkcję akurat użytkownik wykonuje w programie. Jeżeli wpisuje tylko kolejne wyrażenia, to jest widoczna klawiatura przedstawiona na Rys 5.3. Jeżeli natomiast jesteśmy w trybie przeglądania kolejności wykonywania działań, jest możliwe tylko przełączanie się między nimi i wyczyszczenie równania tak, aby można było wpisać nowe. Przy innych czynnościach klawiatura jest nie widoczna, aby nie przeszkadzała w wykonywaniu zamierzonych działań. Jak widać na poprzednim rysunku, w centrum każdego klawisza znajduje się duży znak, oznaczający główną funkcję wykonywaną po jego zwykłym przyciśnięciu. Rys 5.4 Jeden z przycisków z programowej klawiatury, powiększony pięciokrotnie w celu prezentacji sposobu jego użycia. Na Rysunku (Rys 5.4) został zaprezentowany w powiększeniu jeden z przycisków, znajdujących się w programie Kalkulator Plus. Podział widoczny na nim, tak naprawdę jest tylko programowy, a nie wizualny. Przycisk został podzielony na cztery części, a każda z tych części odpowiada za inną funkcję. Na przykład na klawiszu numer, w prawym górnym rogu znajduje się napis cos, oznaczający funkcję Cosinus. W celu dostania się do niej, należy przeciągnąć palec z dowolnego miejsca na przycisku w prawą stronę po ukosie w górę tak, jak zostało to zilustrowane przy pomocy żółtej strzałki na Rys 5.4. Do funkcji należących do tego samego klawisza, lecz znajdujących się w dolnych rogach przycisku można dostać się w sposób analogiczny, przeciągając palec od góry przycisku po skosie w dół w odpowiednim kierunku (lewo bądź prawo), bez znaczenia pod jakim kątem. Należy jednak pamiętać o tym, aby palec przesunąć w dosyć znaczącą odległość, ponieważ może nie zostać rozpoznany zaprogramowany gest. W przypadku nie rozpoznania gestu lub po prostu przy próbie użycia nie przypisanego rogu przycisku (tak jak w przypadku Rys 5.4 z górnego, lewego rogu), zostanie zastosowana domyślna akcja, czyli ta, która przypisana jest jako duży, biały napis. Odległość, jaką musi pokonać palec, aby gest został rozpoznany to 50 pikseli od miejsca zbliżenia palca do wyświetlacza oczywiście musi to być co najmniej 50 pikseli po osi X jak i po osi Y. Na listingu (Listing 5.) został zaprezentowany kod zadeklarowany z programie Kalkulator Plus na obsługę tych właśnie gestów. 7
18 if ((Math.abs(RoznicaX) > 50.0) (Math.abs(RoznicaY) > 50.0)) { if ((RoznicaX < 0.0) && (RoznicaY> 0.0)) { TypPrzycisku = ; } else if ((RoznicaX < 0.0) && (RoznicaY< 0.0)) { TypPrzycisku = ; } else if ((RoznicaX > 0.0) && (RoznicaY< 0.0)) { TypPrzycisku = 3; } else if ((RoznicaX > 0.0) && (RoznicaY> 0.0)) { TypPrzycisku = 4; } } Listing 5. Kod w języku Java odpowiedzialny za rozpoznawanie czy i w którą stronę palec został przesunięty po przycisku Podczas niektórych operacji, np. wyświetlania kolejności wykonywanych działań, na większości przycisków nie są wyświetlane żadne znaki, co czyni je po prostu nieużywalnymi, ponieważ nie mają przypisanych żadnych akcji domyślnych, ani po użyciu gestów MENU GŁÓWNE APLIKACJI Aplikacja została wyposażona w menu, z którego jest bardzo łatwy dostęp do takich opcji, jak konfiguracja programu, historii obliczeń, obsługiwanych funkcji, możliwości zapisania aktualnego działania do pliku, otwarcia okienka informacyjnego na temat aplikacji, oraz możliwość jej zamknięcia. Menu zostało zaprezentowane na Rys 5.5. W aplikacjach pisanych pod systemy Android przyjęło się, iż zamykanie jej następuje poprzez naciśnięcie przycisku fizycznego Wstecz. W aplikacji Kalkulator Plus przycisk ten służy tylko i wyłącznie do powracania do głównego okna aplikacji bez względu na to, jaki widok jest aktualnie otwarty. Z tego właśnie powodu w menu głównym aplikacji istnieje opcja o nazwie Zakończ. Rys 5.5 Menu główne aplikacji, dostępne pod klawiszem Menu. Menu dla aplikacji pisanych dla środowiska Android można utworzyć na dwa różne sposoby 0 (szerzej zostało również opisane w []). Pierwszym z nich jest utworzenie wszystkich elementów w kodzie, co wygląda tak, jak to zostało przedstawione na następnym listingu (Listing 5.)
19 public boolean oncreateoptionsmenu (Menu menu) { menu.add (0, MENU_OPTIONS, 0, "Opcje"); menu.add (0, MENU_HISTORY, 0, "Historia obliczeń"); menu.add (0, MENU_FUNCTIONS, 0, "Obsługiwane funkcje"); menu.add (0, MENU_SAVE, 0, "Zapisz działanie"); menu.add (0, MENU_ABOUT, 0, "O programie..."); menu.add (0, MENU_EXIT, 0, "Zakończ"); } Listing 5. return true; Kod w języku Java odpowiedzialny za wyświetlenie menu, wersja pierwsza Przedstawione rozwiązanie nie jest jednak tym, które autor niniejszej aplikacji wybrał za odpowiedzialne utworzeniu menu w programie, ponieważ posiada ono kilka niedogodności. Takie rozwiązanie nie sprzyja tworzeniu różnych wersji językowych aplikacji. Mimo, iż autor nie utworzył obsługi wielu języków, to w sposób wybrany przez niego będzie to w przyszłości bardzo prostym zabiegiem, ponieważ system Android doskonale wspiera wielojęzyczność aplikacji, korzystając z różnych zasobów, gdy telefon pracuje w różnych językach. Jest to powód, dla którego najlepiej wszelkie stałe tekstowe, takie jak podpisy na przyciskach, czy komunikaty wyświetlane użytkownikowi, najlepiej zapisywać w pliku strings.xml katalogu res/values (w strukturze projektu programu Eclipse) public boolean oncreateoptionsmenu(menu menu){ } // wczytywanie menu z plików zasobów, res/menu/menu.xml MenuInflater inflater = getmenuinflater(); inflater.inflate(r.menu.menu, menu); return true; Listing 5.3 Kod w języku Java odpowiedzialny za wyświetlenie menu, wersja druga <menu xmlns:android=" xmlns:android=" <item android:id="@+id/options" android:title="opcje" android:icon="@drawable/options" /> <item android:id="@+id/history" android:title="historia obliczeń" android:icon="@drawable/history" /> <item android:id="@+id/functions" android:title="obsługiwane funkcje" android:icon="@drawable/function"/> <item android:id="@+id/save" android:title="zapisz działanie" android:icon="@drawable/save" /> <item android:id="@+id/about" android:title="o programie..." android:icon="@drawable/about" /> <item android:title="zakończ" android:id="@+id/exit" android:icon="@drawable/exit" /> </menu> Listing 5.4 Zawartość pliku menu.xml znajdującego się w katalogu res/menu, odpowiedzialnego za utworzenie menu wraz z ikonami 9
20 Kolejnym powodem, dla którego dobrze jest zastosować drugi sposób, to wsparcie dla ikon dla elementów menu i większa możliwość konfiguracji elementów menu, takich jak np. submenu. Drugim sposobem na utworzenie menu, jest właśnie zapisanie go w pliku xml w postaci odpowiednich struktur. Wczytywanie takiego pliku zostało przedstawione we wcześniejszym listingu (Listing 5.3), natomiast zawartość menu w następnym (Listing 5.4). Drugi kod tworzenia menu jest mniej skomplikowany i bardziej przejrzysty, niż pierwszy, dlatego autor zdecydował się na właśnie jego wykorzystanie. Z tego powodu, iż w programie może być używane kilka różnych menu, w linijce numer 6 (Listing 5.3) utworzone jest odwołanie do właściwego menu poprzez jego nazwę. W przedstawionym kodzie (Listing 5.4) widać dokładnie sposób, w jaki menu jest zbudowane. Elementy o id android:id przechowują identyfikatory danej opcji, aby móc się później do niego odwołać (chociażby podczas wybrania jej z menu, aby wykonać odpowiednią operację). Kolejnym elementem jest android:title, zawierający tekst, który wyświetlany jest na danej opcji menu, natomiast zmienna android:icon zawiera odnośnik do nazwy pliku, który służy jako ikonka danego elementu menu. Dokładnie ten kod, odpowiedzialny jest za wyświetlenie menu, które znajduje się na Rys KONFIGURACJA PROGRAMU Program jak każdy inny, posiada możliwość skonfigurowania jego niektórych funkcji. Posiada on opcje podzielone na dwie kategorie pierwsza z nich jest mało ważna, ponieważ zawiera tylko możliwość skonfigurowania kolorowania różnych elementów w składni edytora wyrażeń, takich jak kolor błędów czy ostrzeżeń (na Rys 5.6 zostały przedstawione obie kategorie konfiguracji) <ListPreference android:defaultvalue="8" android:key="history" android:dialogtitle="wybierz ilość cyfr" android:title="objętość historii" android:entries="@array/options_precision" android:entryvalues="@array/options_precision_values" android:summary="wybierz liczbę wpisów, które przechowywać w historii obliczeń" /> Listing 5.5 Jedna z opcji programu w pliku preferences.xml W listingu (Listing 5.5) została zaprezentowana budowa elementów okienka konfiguracyjnego. Całe menu jest zapisane w pliku preferences.xml w katalogu /res/xml i w razie chęci autora do utworzenia wersji wielojęzycznej, można utworzyć folder xml-en, w celu utworzenia amerykańskiej wersji językowej. Każdy element rozpoczyna się od definicji typu elementu, a na przedstawionym listingu znajduje się on w pierwszej linicje. Typ ListPreference oznacza, iż elementem będzie lista wyboru, umożliwiająca wybrać tylko jeden element. Pliki są tak skonstruowane, iż lista elementów może być zadeklarowana w zupełnie innym miejscu, a wartości, które kryją się pod danym elementem mogą być również w zupełnie innym. W przypadku tego elementu, lista wartości do wybrania jest zadeklarowana w pliku /res/values/arrays.xml, a używana lista w tym przykładzie jest zaprezentowana na kolejnym listingu (Listing 5.6). Miejsce, gdzie należy podać lokalizację elementów listy, znajduje się w linijkach 6 (elementy listy) i 7 (wartości listy), w poprzednim listingu (Listing 5.5). 0
21 Rys 5.6 Konfiguracja główna programu. Ponieważ jest w niej wiele opcji, została przedstawiona na dwóch rysunkach. Do menu można dodać oczywiście również inne elementy, lecz nie wszystkie wymagają takich samych atrybutów <string-array name="options_precision"> <item></item> <item></item> <item>3</item> <item>4</item> <item>5</item>... <item>9</item> <item>0</item> </string-array> Listing 5.6 Zadeklarowana lista wyboru w pliku /res/values/arrays.xml Takie atrybuty, które powinny znaleźć się w każdego typu elementów, to : - android:key klucz pola. To za jego pomocą będziemy pobierać wartość zapisaną w konkretnym elemencie. Jest to też identyfikator elementu, lecz nie musi być unikalny, - android:title tytuł pola wyświetlany na liście opcji, - android:summary tekst wyświetlany pod tytułem, zazwyczaj jest to rozszerzony opis, do czego wybrana opcja służy, - android:defaultvalue domyślna wartość pola. System Android umożliwia tworzenie różnego rodzaju pól dla ustawień aplikacji, a wynika to oczywiście z potrzeb programistów, którzy chcą dać użytkownikowi aplikację umożliwiającą
22 w jak najbardziej przyjazny sposób na skonfigurowanie wybranych ustawień. Poniżej zostały wymienione możliwe elementy szablonu dla konfiguracji (szerzej możliwości zostały opisane w []): - PreferenceScreen jest to jednocześnie element główny (jeżeli jest rootem w naszym pliku), jak i przycisk otwierający kolejne okno z elementami ustawień, które zawiera wewnątrz siebie (jeżeli nie jest rootem), - PreferenceCategory służy do tego by uporządkować elementy ustawień, przechowując je w niewidocznym kontenerze z widocznym nagłówkiem, - Preference element służący do ustawień typu "Custom" - działa jak zwykły przycisk, który należy oprogramować by robił coś konkretnego, - CheckBoxPreference element z checkboxem, przyjmujący wartości tylko true i false, - EditTextPreference element, który po kliknięciu wyświetla okno dialogowe z polem EditText, w które użytkownik może wpisać dowolny ciąg tekstowy, - ListPreference element wyświetlający okno dialogowe z listą radiobuttonów. Użytkownik może wybrać tylko jeden z tych elementów, - MultiSelectListPreference element w funkcjonalności bardzo podobny do elementu ListPreference, lecz użytkownik może wybrać z niej kilka opcji, - RingtonePreference jest również elementem podobnym do funkcjonalności ListPreference, ale wyświetla listę dzwonków, które użytkownik może wybrać dla naszej aplikacji (możliwość wybrania tylko jednego elementu). W aplikacji Kalkulator Plus, oprócz kolorowania składni można ustawić odpowiednie opcje potrzebne do prawidłowego korzystania z programu i otrzymywaniu poprawnych wyników, takie jak : - Precyzja liczb, dzięki czemu użytkownik może zdecydować, z jakim zaokrągleniem program powinien wyświetlać wyniki. Standardowo liczba ta wynosi 0 znaków, jednak urządzenia mobilne nie posiadają zbyt dużej mocy obliczeniowej, dlatego przy wykonywaniu niektórych działań należy zmienić na możliwie jak najmniejszą liczbę cyfr po przecinku, - Zapisuj historię, przyjmująca wartości True (tak) lub False (nie). Program domyślnie zapisuje historię dokonanych obliczeń do pliku wraz z datą, kiedy zostały one wykonane, - Objętość historii, opcja wskazująca maksymalną ilość wpisów, które program powinien zapisywać w pliku. Możliwe jest wybranie przedziału od (tylko ostatnie działania) do maksymalnie 0. Dane są zapisywane w pliku tekstowym w tym samym folderze, co rozwiązane wyrażenie, - Krok po kroku, przyjmująca wartości True (tak) lub False (nie), standardowo True. Opcja odpowiedzialna jest za to, że automatycznie po przyciśnięciu znaku równa się (=), zostanie wyświetlone rozwiązanie pierwszego działania z możliwością przejścia do kolejnych, - Folder zapisu, gdzie zostanie zapisana historia oraz sposób wykonania równania, gdy użytkownik wyrazi na to ochotę. Standardowo zapisuje się w folderze
23 głównym karty pamięci, a po wpisaniu nazwy folderu zostanie utworzony folder na karcie pamięci, - Nazwa pliku, do którego będą zapisywane utworzone przez użytkownika równania. Będą one zapisywane w folderze, który zostanie wybrany w menu Folder Zapisu, pod nazwą nazwa_pliku_data.txt OKIENKO INFORMACYJNE Większość producentów aplikacji na platformę Android, tworząc wszelkie okienka informacyjne tworzy je w taki sposób, aby zawierały wszystkie niezbędne informacje i bez żadnych przycisków służących do zamykania tych okien. Tak samo zostało to zrobione w aplikacji Kalkulator Plus. W kolejnym listingu (Listing 5.7) został przedstawiony kod źródłowy xml dla okienka informacyjnego O programie w aplikacji Kalkulator Plus <?xml version=".0" encoding="utf-8"?> <TableLayout xmlns:android=" android:layout_width="wrap_content" android:layout_height="wrap_content" android:stretchcolumns="*"> <TableRow> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/calculator" android:layout_gravity="left center"/> <TextView android:id="@+id/info_text" android:gravity="center" android:layout_gravity="center" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </TableRow> <TableRow> <TextView android:id="@+id/legal_text" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textsize="0dip" android:textstyle="italic" android:layout_span="" android:layout_margin="8dip" android:textcolor="#cccccc" /> </TableRow> </TableLayout> Listing 5.7 Kod źródłowy okna informacyjnego w programie Kalkulator Plus, wyświetlającego informacje na temat autora i jego aplikacji. Do zbudowania szablonu, wykorzystane zostały trzy komponenty ImageView oraz dwie kontrolki TextView. Został wykorzystany także pojemnik TableLayout. Poniżej zostały opisane użyte komponenty: - ImageView komponent umożliwiający wyświetlanie dowolnego obrazu, np. ikony czy zdjęcia. Klasa ta pozwala na ładowanie zdjęć z różnego rodzaju źródeł, np. z zasobów czy z karty pamięci telefonu, 3
24 - TextView komponent umożliwiający wyświetlanie dowolnego tekstu i ewentualnie jego edycję przez użytkownika programu. Jest to tak naprawdę edytor tekstu, który domyślnie ustawiony jest tylko na wyświetlanie, - TableLayout jest to tak zwany kontener, który zawiera wszystkie inne komponenty. Dzięki niemu można ułożyć w odpowiedni sposób pozostałe kontrolki tak, aby użytkownik nie miał problemów w użytkowaniu aplikacji. Dla wszystkich kontrolek można ustawiać takie właściwości jak szerokość, wysokość, formatowanie czcionki, identyfikator dzięki któremu można się do nich dowolnie odwoływać z poziomu kodu. Okienko informacyjne utworzone w ten sposób zostało przedstawione na poniższym rysunku (Rys 5.7). Rys 5.7 Okno przedstawiające informacje na temat programu Kalkulator Plus. Jak widać na Rys 5.7, na formatce pokazują się również teksty, które nie są zapisane w szablonie. Dzieje się tak dzięki temu, iż w kodzie wywołującym okno znajduje się odwołanie do zadeklarowanych w szablonie kontrolek setcontentview(r.layout.maindialog); TextView legal = (TextView)findViewById(R.id.legal_text); legal.settext(readrawtextfile(r.raw.legal)); TextView info = (TextView)findViewById(R.id.info_text); info.settext(html.fromhtml(readrawtextfile(r.raw.info))); Listing 5.8 Kod źródłowy Java sposobu odwoływania się do okienka informacyjnego i przypisywania mu tekstu z pliku umieszczonego w zasobach. W powyższym listingu (Listing 5.8) został przedstawiony sposób odwoływania się do praktycznie każdego komponentu, znajdującego się na formatce przypisanej do aplikacji. W pierwszej linijce ostatniego Listingu zostało pokazane, w jaki sposób wywołuje się dany widok. Należy podać jedynie nazwę pliku, w którym znajduje się jej szablon, a ponieważ znajduje się on w lokalizacji /res/layout/maindialog.xml, to właśnie taką lokalizację podajemy przy wywoływaniu (a dokładniej R.nazwa_folderu.nazwa_zasobu). Odwoływanie się do obiektu znajdującego się na formatce odbywa się w bardzo podobny sposób, co widać w linijce -3 w tymże listingu. Wystarczy zadeklarować zmienną, do której przypiszemy dany komponent, typem określającym typ komponentu, a następnie rzutujemy na tenże typ i szukamy komponentu o nazwie tutaj legal_text. Po tej czynności możemy się do wyszukanego komponentu odwoływać w taki sam sposób, jak do innych zmien- 4
Politechnika Opolska. PRACA DYPLOMOWA Studia pierwszego stopnia stacjonarne REALIZACJA PARSERA WYRAŻEŃ MATEMATYCZNYCH NA PLATFORMIE ANDROID
Politechnika Opolska Wydział Elektrotechniki, Automatyki i Informatyki Instytut Układów Elektromechanicznych i Elektroniki Przemysłowej PRACA DYPLOMOWA Studia pierwszego stopnia stacjonarne Informatyka
Politechnika Opolska. PRACA DYPLOMOWA Studia pierwszego stopnia stacjonarne REALIZACJA PARSERA WYRAŻEŃ MATEMATYCZNYCH NA PLATFORMIE ANDROID
Politechnika Opolska Wydział Elektrotechniki, Automatyki i Informatyki Instytut Układów Elektromechanicznych i Elektroniki Przemysłowej PRACA DYPLOMOWA Studia pierwszego stopnia stacjonarne Informatyka
Politechnika Opolska. PRACA DYPLOMOWA Studia pierwszego stopnia stacjonarne REALIZACJA PARSERA WYRAŻEŃ MATEMATYCZNYCH NA PLATFORMIE ANDROID
Politechnika Opolska Wydział Elektrotechniki, Automatyki i Informatyki Instytut Układów Elektromechanicznych i Elektroniki Przemysłowej PRACA DYPLOMOWA Studia pierwszego stopnia stacjonarne Informatyka
Politechnika Opolska. PRACA DYPLOMOWA Studia pierwszego stopnia stacjonarne REALIZACJA PARSERA WYRAŻEŃ MATEMATYCZNYCH NA PLATFORMIE ANDROID
Politechnika Opolska Wydział Elektrotechniki, Automatyki i Informatyki Instytut Układów Elektromechanicznych i Elektroniki Przemysłowej PRACA DYPLOMOWA Studia pierwszego stopnia stacjonarne Informatyka
Expo Composer. www.doittechnology.pl 1. Garncarska 5 70-377 Szczecin tel.: +48 91 404 09 24 e-mail: info@doittechnology.pl. Dokumentacja użytkownika
Expo Composer Dokumentacja użytkownika Wersja 1.0 www.doittechnology.pl 1 SPIS TREŚCI 1. O PROGRAMIE... 3 Wstęp... 3 Wymagania systemowe... 3 Licencjonowanie... 3 2. PIERWSZE KROKI Z Expo Composer... 4
Programowanie Urządzeń Mobilnych. Laboratorium nr 7, 8
Programowanie Urządzeń Mobilnych Laboratorium nr 7, 8 Android Temat 1 tworzenie i uruchamianie aplikacji z użyciem Android SDK Krzysztof Bruniecki 1 Wstęp Platforma Android jest opartym na Linuxie systemem
1. Instalacja Programu
Instrukcja obsługi dla programu Raporcik 2005 1. Instalacja Programu Program dostarczony jest na płycie cd, którą otrzymali Państwo od naszej firmy. Aby zainstalować program Raporcik 2005 należy : Włożyć
1. Dockbar, CMS + wyszukiwarka aplikacji Dodawanie portletów Widok zawartości stron... 3
DODAJEMY TREŚĆ DO STRONY 1. Dockbar, CMS + wyszukiwarka aplikacji... 2 2. Dodawanie portletów... 3 Widok zawartości stron... 3 Omówienie zawartości portletu (usunięcie ramki itd.)... 4 3. Ikonki wybierz
Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.
GRZEGORZ FURDYNA Krótka Historia Co to jest NetBeans? Historia Wersje NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły NetBeans Profiler Narzędzie do projektowania GUI Edytor NetBeans
Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia
Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia nowego projektu (poniżej są utworzone projekty) Po kliknięciu
Cel: Przypisujemy przyciskom określone funkcje panel górny (Panel1)
W odcinku III tworzyliśmy paski narzędzi. Umieszczaliśmy na panelach ikony, reprezentujące czynności (charakterystyczne dla edytorów tekstu). Musimy teraz przypisać każdemu przyciskowi jego czynność (wycinanie,
VinCent Administrator
VinCent Administrator Moduł Zarządzania podatnikami Krótka instrukcja obsługi ver. 1.01 Zielona Góra, grudzień 2005 1. Przeznaczenie programu Program VinCent Administrator przeznaczony jest dla administratorów
APLIKACJA SHAREPOINT
APLIKACJA SHAREPOINT Spis treści 1. Co to jest SharePoint?... 2 2. Tworzenie nowej witryny SharePoint (obszar roboczy)... 2 3. Gdzie znaleźć utworzone witryny SharePoint?... 3 4. Personalizacja obszaru
Synchronizator plików (SSC) - dokumentacja
SZARP http://www.szarp.org Synchronizator plików (SSC) - dokumentacja Wersja pliku: $Id: ssc.sgml 4420 2007-09-18 11:19:02Z schylek$ > 1. Witamy w programie SSC Synchronizator plików (SZARP Sync Client,
Rozdział 5. Administracja kontami użytkowników
Rozdział 5. Administracja kontami użytkowników Ćwiczenia zawarte w tym rozdziale pozwolą przygotować oddzielne środowisko pracy dla każdego użytkownika komputera. Windows XP, w porównaniu do systemów Windows
Pokaz slajdów na stronie internetowej
Pokaz slajdów na stronie internetowej... 1 Podpisy pod zdjęciami... 3 Publikacja pokazu slajdów w Internecie... 4 Generator strony Uczelni... 4 Funkcje dla zaawansowanych użytkowników... 5 Zmiana kolorów
Tworzenie prezentacji w MS PowerPoint
Tworzenie prezentacji w MS PowerPoint Program PowerPoint dostarczany jest w pakiecie Office i daje nam możliwość stworzenia prezentacji oraz uatrakcyjnienia materiału, który chcemy przedstawić. Prezentacje
Edytor tekstu OpenOffice Writer Podstawy
Edytor tekstu OpenOffice Writer Podstawy OpenOffice to darmowy zaawansowany pakiet biurowy, w skład którego wchodzą następujące programy: edytor tekstu Writer, arkusz kalkulacyjny Calc, program do tworzenia
Aktywności są związane z ekranem i definiują jego wygląd. Dzieje się to poprzez podpięcie do aktywności odpowiedniego widoku.
Aktywności to podstawowe elementy związane z platformą Android. Dzięki poznaniu aktywności będziesz w stanie napisać pierwszą aplikację przeznaczoną na urządzenie mobilne. Po dodaniu kontrolek możesz w
2014 Electronics For Imaging. Informacje zawarte w niniejszej publikacji podlegają postanowieniom opisanym w dokumencie Uwagi prawne dotyczącym tego
2014 Electronics For Imaging. Informacje zawarte w niniejszej publikacji podlegają postanowieniom opisanym w dokumencie Uwagi prawne dotyczącym tego produktu. 23 czerwca 2014 Spis treści 3 Spis treści...5
WPROWADZENIE DO JĘZYKA JAVA
WPROWADZENIE DO JĘZYKA JAVA programowanie obiektowe KRÓTKA HISTORIA JĘZYKA JAVA KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny języka java. Pierwsza nazwa Oak (dąb). KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny
Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy wykład 1, część 2 1 Język JAVA podstawy Plan wykładu: 1. Krótka historia Javy 2. Jak przygotować sobie środowisko programistyczne 3. Opis środowiska JDK 4. Tworzenie programu krok po
Podręcznik użytkownika programu. Ceremonia 3.1
Podręcznik użytkownika programu Ceremonia 3.1 1 Spis treści O programie...3 Główne okno programu...4 Edytor pieśni...7 Okno ustawień programu...8 Edycja kategorii pieśni...9 Edytor schematów slajdów...10
Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7
5.0 5.3.3.5 Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7 Wprowadzenie Wydrukuj i uzupełnij to laboratorium. W tym laboratorium, będziesz korzystać z narzędzi administracyjnych
Włączanie/wyłączanie paska menu
Włączanie/wyłączanie paska menu Po zainstalowaniu przeglądarki Internet Eksplorer oraz Firefox domyślnie górny pasek menu jest wyłączony. Czasem warto go włączyć aby mieć szybszy dostęp do narzędzi. Po
Piotr Dynia. PowerPivot. narzędzie do wielowymiarowej analizy danych
Piotr Dynia PowerPivot narzędzie do wielowymiarowej analizy danych Od autora Wraz z wprowadzeniem na rynek nowej wersji pakietu Office: Microsoft Office 2010 udostępniono darmowy dodatek dla Excela o nazwie
Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.
Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na
System obsługi wag suwnicowych
System obsługi wag suwnicowych Wersja 2.0-2008- Schenck Process Polska Sp. z o.o. 01-378 Warszawa, ul. Połczyńska 10 Tel. (022) 6654011, fax: (022) 6654027 schenck@schenckprocess.pl http://www.schenckprocess.pl
Podstawy technologii cyfrowej i komputerów
BESKIDZKIE TOWARZYSTWO EDUKACYJNE Podstawy technologii cyfrowej i komputerów Budowa komputerów cz. 2 systemy operacyjne mgr inż. Radosław Wylon 2010 1 Spis treści: Rozdział I 3 1. Systemy operacyjne 3
Nowa Netia administrator firmy Nagrywanie połączeń-zarządzanie
RBT API v2.3 Nowa Netia administrator firmy Nagrywanie połączeń-zarządzanie Spis treści I. WPROWADZENIE 2 II. OPIS FUNKCJONALNOŚCI..3 1. LOGOWANIE I ZMIANA HASŁA...3 1.1 LOGOWANIE..3 1.2 WIDOK PO ZALOGOWANIU...4
[1/15] Chmury w Internecie. Wady i zalety przechowywania plików w chmurze
Chmury w Internecie Nota Materiał powstał w ramach realizacji projektu e-kompetencje bez barier dofinansowanego z Programu Operacyjnego Polska Cyfrowa działanie 3.1 Działania szkoleniowe na rzecz rozwoju
WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.
WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM NetBeans Wykonał: Jacek Ventzke informatyka sem. VI 1. Uruchamiamy program NetBeans (tu wersja 6.8 ) 2. Tworzymy
PROBLEMY TECHNICZNE. Co zrobić, gdy natrafię na problemy związane z użytkowaniem programu DYSONANS
PROBLEMY TECHNICZNE Co zrobić, gdy natrafię na problemy związane z użytkowaniem programu DYSONANS Jeżeli stwierdziłeś występowanie błędów lub problemów podczas pracy z programem DYSONANS możesz skorzystać
Ćwiczenie Nr 6 Przegląd pozostałych najważniejszych mechanizmów systemu operacyjnego Windows
Ćwiczenie Nr 6 Przegląd pozostałych najważniejszych mechanizmów systemu operacyjnego Windows Cel ćwiczenia: Zapoznanie się z: zarządzaniem systemami plików, zarządzaniem atrybutami plików, prawami do plików
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM
CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM 1.1. PODSTAWOWE INFORMACJE PC to skrót od nazwy Komputer Osobisty (z ang. personal computer). Elementy komputera można podzielić na dwie ogólne kategorie: sprzęt - fizyczne
etrader Pekao Podręcznik użytkownika Strumieniowanie Excel
etrader Pekao Podręcznik użytkownika Strumieniowanie Excel Spis treści 1. Opis okna... 3 2. Otwieranie okna... 3 3. Zawartość okna... 4 3.1. Definiowanie listy instrumentów... 4 3.2. Modyfikacja lub usunięcie
Załącznik 1 instrukcje instalacji
Załącznik 1 instrukcje instalacji W poniższym załączniku przedstawione zostaną instrukcje instalacji programów wykorzystanych w trakcie tworzenia aplikacji. Poniższa lista przedstawia spis zamieszczonych
Android - wprowadzenie. Łukasz Przywarty 171018
Android - wprowadzenie Łukasz Przywarty 171018 Ramowy plan prezentacji Czym jest Android: definicja, krótka historia. Architektura systemu. Architektura aplikacji. Właściwości systemu. Środowisko deweloperskie.
KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED
KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED Podręcznik użytkownika Katowice 2010 Producent programu: KAMSOFT S.A. ul. 1 Maja 133 40-235 Katowice Telefon: (0-32) 209-07-05 Fax:
Nagrywamy podcasty program Audacity
Pobieranie i instalacja Program Audacity jest darmowym zaawansowanym i wielościeżkowym edytorem plików dźwiękowych rozpowszechnianym na licencji GNU GPL. Jest w wersjach dla systemów typu Unix/Linux, Microsoft
Programowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
Instrukcja Instalacji
Generator Wniosków Płatniczych dla Programu Operacyjnego Kapitał Ludzki Instrukcja Instalacji Aplikacja współfinansowana ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego Spis treści
Komputery I (2) Panel sterowania:
Komputery I (2) Paweł Jamer Panel sterowania: Podstawowym miejscem z którego zarządzamy ustawieniami systemu Windows jest panel sterowania. Znaleźć tam możemy wszelkiego rodzaju narzędzia umożliwiające
Programowanie obiektowe
Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć
INSTRUKCJA INSTALACJI OPROGRAMOWANIA MICROSOFT LYNC 2010 ATTENDEE ORAZ KORZYTANIA Z WYKŁADÓW SYNCHRONICZNYCH
INSTRUKCJA INSTALACJI OPROGRAMOWANIA MICROSOFT LYNC 2010 ATTENDEE ORAZ KORZYTANIA Z WYKŁADÓW SYNCHRONICZNYCH Wstęp Warunkiem uczestnictwa w wykładzie zdalnym jest zainstalowanie na komputerze ucznia uczestnika
Temat: Organizacja skoroszytów i arkuszy
Temat: Organizacja skoroszytów i arkuszy Podstawowe informacje o skoroszycie Excel jest najczęściej wykorzystywany do tworzenia skoroszytów. Skoroszyt jest zbiorem informacji, które są przechowywane w
KASK by CTI. Instrukcja
KASK by CTI Instrukcja Spis treści 1. Opis programu... 3 2. Pierwsze uruchomienie... 4 3. Okno główne programu... 5 4. Konfiguracja atrybutów... 6 5. Nadawanie wartości atrybutom... 7 6. Wybór firmy z
Jak zainstalować i skonfigurować komunikator MIRANDA, aby wyglądał i funkcjonował jak Gadu Gadu Tutorial by t800.
Jak zainstalować i skonfigurować komunikator MIRANDA, aby wyglądał i funkcjonował jak Gadu Gadu Tutorial by t800. Wraz z niniejszym tutorialem, dołączone są 4 pliki (krok0, krok1, itd). Nie należy ich
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS)
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS) Temat: Platforma Systemowa Wonderware cz. 2 przemysłowa baza danych,
Instalacja Czytnika Kart w systemie Windows 7
Instalacja Czytnika Kart w systemie Windows 7 Dokumentacja użytkownika BGK@24 BIZNES Dokumentacja Użytkownika BGK@24BIZNES 1 SPIS TREŚCI I. INSTALACJA CZYTNIKA KART W SYSTEMIE WINDOWS 7... 3 II. DEINSTALACJA
Dodatki. Dodatek A Octave. Język maszyn
Dodatki Dodatek A Octave Przykłady programów zostały opracowane w środowisku programistycznym Octave 3.6.2 z interfejsem graficznym GNU Octave 1.5.4. Octave jest darmowym środowiskiem programistycznym
Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0
Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0 UWAGA 1: Przed dokonaniem jakichkolwiek zmian, zalecamy skopiować wcześniej kod html modułu do pliku na lokalnym dysku. W przypadku problemów ułatwi
S P I S T R E Ś C I. Instrukcja obsługi
S P I S T R E Ś C I Instrukcja obsługi 1. Podstawowe informacje o programie.................................................................................... 2 2. Instalacja programu.....................................................................................................
Rozdział 1. Zagadnienia podstawowe
Rozdział 1. Zagadnienia podstawowe Ćwiczenia zawarte w tym rozdziale pozwolą poznać zagadnienia związane z rozpoczęciem i zakończeniem pracy w środowisku Windows XP. Omówiony zostanie również nowy mechanizm
e-podręcznik dla seniora... i nie tylko.
Pliki i foldery Czym są pliki? Plik to w komputerowej terminologii pewien zbiór danych. W zależności od TYPU pliku może to być: obraz (np. zdjęcie z imienin, rysunek) tekst (np. opowiadanie) dźwięk (np.
Rozdział ten zawiera informacje o sposobie konfiguracji i działania Modułu OPC.
1 Moduł OPC Moduł OPC pozwala na komunikację z serwerami OPC pracującymi w oparciu o model DA (Data Access). Dzięki niemu można odczytać stan obiektów OPC (zmiennych zdefiniowanych w programie PLC), a
INSTRUKCJA UŻYTKOWNIKA PORTALU SIDGG
INSTRUKCJA UŻYTKOWNIKA PORTALU SIDGG dla Państwowy Instytut Geologiczny Państwowy Instytut Badawczy 1. Uruchomienie aplikacji. a. Wprowadź nazwę użytkownika w miejsce Nazwa użytkownika b. Wprowadź hasło
URZĄDZENIE DO BEZPRZEWODOWEGO STRUMIENIOWANIA MULTIMEDIÓW
URZĄDZENIE DO BEZPRZEWODOWEGO STRUMIENIOWANIA MULTIMEDIÓW Instrukcja szybkiej instalacji DN-70310 1. Prezentacja produktu Dziękujemy za wybranie urządzenia do bezprzewodowego strumieniowania multimediów
Rozdział 2. Konfiguracja środowiska pracy uŝytkownika
Rozdział 2. Konfiguracja środowiska pracy uŝytkownika Ćwiczenia zawarte w tym rozdziale pozwolą na dostosowanie pulpitu i menu Start do indywidualnych potrzeb uŝytkownika. Środowisko graficzne systemu
Instrukcja procesu aktywacji oraz obsługi systemu Banku Internetowego dla BS Mikołajki
Instrukcja procesu aktywacji oraz obsługi systemu Banku Internetowego dla BS Mikołajki w oparciu o przeglądarkę Microsoft Internet Explorer System stworzony został w oparciu o aktualne narzędzia i programy
Pracownia internetowa w każdej szkole (edycja Jesień 2007)
Instrukcja numer D1/04_01/Z Pracownia internetowa w każdej szkole (edycja Jesień 2007) Opiekun pracowni internetowej cz. 1 (D1) Tworzenie kopii zapasowej ustawień systemowych serwera - Zadania do wykonania
Padlet wirtualna tablica lub papier w Internecie
Padlet wirtualna tablica lub papier w Internecie Umiejętność gromadzenia, a potem przetwarzania, wykorzystania i zastosowania informacji w celu rozwiązania jakiegoś problemu, jest uważana za jedną z kluczowych,
5.2. Pierwsze kroki z bazami danych
5.2. Pierwsze kroki z bazami danych Uruchamianie programu Podobnie jak inne programy, OO Base uruchamiamy z Menu Start, poprzez zakładkę Wszystkie programy, gdzie znajduje się folder OpenOffice.org 2.2,
Szkolenie dla nauczycieli SP10 w DG Operacje na plikach i folderach, obsługa edytora tekstu ABC. komputera dla nauczyciela. Materiały pomocnicze
ABC komputera dla nauczyciela Materiały pomocnicze 1. Czego się nauczysz? Uruchamianie i zamykanie systemu: jak zalogować się do systemu po uruchomieniu komputera, jak tymczasowo zablokować komputer w
1. Od czego zacząć? - Instalacja środowiska pracy
1. Od czego zacząć? - Instalacja środowiska pracy 1.1 Jeśli mamy komputer z Windows 8.1 Prof. lub nowszy W takim przypadku potrzebne nam będą tylko aktualne aktualizacje no i oczywiście środowisko pracy.
Poradnik użytkownika pomoc techniczna
Poradnik użytkownika pomoc techniczna Poradnik dotyczy komputerów z zainstalowanym systemem Windows 1 Spis treści I. POSTĘPOWANIE W PRZYPADKU PROBLEMÓW Z URUCHOMIENIEM APLIKACJI SUPERMAKLER... 3 1. JAVA
Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod:
1. Listener dla przycisku. Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod: W linii 24 tworzymy globalną metodę mglobal_onclicklistener,
DODAJEMY TREŚĆ DO STRONY
DODAJEMY TREŚĆ DO STRONY SPIS TREŚCI Pasek narzędzi i wyszukiwarka aplikacji... 2 Dodawanie portletów... 3 Widok zawartości stron... 4 Zawartość portletu... 5 Ikonki wybierz oraz dodaj zawartość stron...
Instrukcja obsługi programu Do-Exp
Instrukcja obsługi programu Do-Exp Autor: Wojciech Stark. Program został utworzony w ramach pracy dyplomowej na Wydziale Chemicznym Politechniki Warszawskiej. Instrukcja dotyczy programu Do-Exp w wersji
Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa
1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko
Voicer. SPIKON Aplikacja Voicer V100
Voicer SPIKON Aplikacja Voicer V100 SPIKON Voicer Aplikacja Voicer w platformie SPIKON dedykowana jest przede wszystkim konsultantom kampanii wirtualnego Call Center. Dając łatwy dostęp do najważniejszych
Kontrola topto. 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja.
Kontrola topto Obsługa aplikacji Kontrola topto 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja. 5. Dodawanie, edycja i usuwanie przejść.
REFERAT O PRACY DYPLOMOWEJ
REFERAT O PRACY DYPLOMOWEJ Temat pracy: Projekt i budowa systemu zarządzania treścią opartego na własnej bibliotece MVC Autor: Kamil Kowalski W dzisiejszych czasach posiadanie strony internetowej to norma,
PRODUKCJA BY CTI INSTRUKCJA INSTALACJI I KONFIGURACJI
PRODUKCJA BY CTI INSTRUKCJA INSTALACJI I KONFIGURACJI Spis treści Ważne informacje przed instalacją... 3 1. Instalacja oprogramowania... 4 2. Konfiguracja połączenia z serwerem SQL oraz z programem OPTIMA...
INSTRUKCJA EDYCJI PROFILU OSOBOWEGO W SERWISIE WWW.UMCS.PL
INSTRUKCJA EDYCJI PROFILU OSOBOWEGO W SERWISIE WWW.UMCS.PL Lublin, 16 stycznia 2014 r. 1. Logowanie do systemu Aby rozpocząć edycję profilu osobowego wejdź na stronę główną www.umcs.pl w zakładkę Jednostki
Instrukcja obsługi SafeIT - modułu zdalnego sterowania do sterowników kotłów CO firmy Foster v1.0
Instrukcja obsługi SafeIT - modułu zdalnego sterowania do sterowników kotłów CO firmy Foster v1.0 Wersja z dnia: 2017-08-21 Spis treści Opis... 3 1. Zasady bezpieczeństwa... 3 Instalacja... 3 Użytkowanie...
Szanowni Państwo. Należy przy tym pamiętać, że zmiana stawek VAT obejmie dwie czynności:
Szanowni Państwo Zapowiedź podniesienia stawek VAT stała się faktem. Zgodnie z ustawą o podatku od towarów i usług z dniem 1 stycznia 2011 roku zostaną wprowadzone nowe stawki VAT. Obowiązujące aktualnie
IPLA HELP. W celu uruchomienia aplikacji IPLA należy pobrać wersję instalacyjną programu iplasetup.exe i zapisać ją na dysku twardym komputera.
IPLA HELP Spis treści 1. Instalacja programu...1 2. Wymagania techniczne...2 3. Okno logowania...2 4. Opcje IPLA...4 5. Zakładka Media...6 6. Zakładka RSS...8 7. Zakładka Kontakty...9 8. Zakładka Pokoje...
INSTALACJA SERWERA LOKALNEGO TYPU WAMP NA PRZYKŁADZIE PAKIETU KRASNAL SERV 2.7
Mgr inż. Marcin Dąbrowski INSTALACJA SERWERA LOKALNEGO TYPU WAMP NA PRZYKŁADZIE PAKIETU KRASNAL SERV 2.7 Wydział Organizacji i Zarządzania Politechnika Śląska w Gliwicach Zabrze 2009 1. Instalacja lokalnego
Windows XP - lekcja 3 Praca z plikami i folderami Ćwiczenia zawarte w tym rozdziale pozwolą na tworzenie, usuwanie i zarządzanie plikami oraz folderami znajdującymi się na dysku twardym. Jedną z nowości
Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania
1) Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z podstawowymi elementami obiektowymi systemu Windows wykorzystując Visual Studio 2008 takimi jak: przyciski, pola tekstowe, okna pobierania danych
MagicInfo Express instrukcja obsługi
MagicInfo Express instrukcja obsługi INFO MagicInfo Express Kreator zawartości to program pozwalający w prosty sposób tworzyć zawartość LFD na podstawie różnych szablonów oraz harmonogramy wyświetlania
Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika
Warsztaty AVR Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR Dariusz Wika 1.Krótki wstęp: Eclipse to rozbudowane środowisko programistyczne, które dzięki możliwości instalowania
Fiery Remote Scan. Uruchamianie programu Fiery Remote Scan. Skrzynki pocztowe
Fiery Remote Scan Program Fiery Remote Scan umożliwia zarządzanie skanowaniem na serwerze Fiery server i drukarce ze zdalnego komputera. Programu Fiery Remote Scan można użyć do wykonania następujących
Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows Vista
5.0 5.3.3.6 Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows Vista Wprowadzenie Wydrukuj i uzupełnij to laboratorium. W tym laboratorium, będziesz korzystać z narzędzi administracyjnych
KORZYSTANIE Z BAZY DANYCH UpToDate
KORZYSTANIE Z BAZY DANYCH UpToDate 1 KORZYSTANIE Z BAZY DANYCH UpToDate 1. Wejdź na stronę Biblioteki Głównej Uniwersytetu Medycznego w Lublinie: http://www.biblioteka.umlub.pl 2. W ZASOBY kliknij na Zdalny
Instrukcja obsługi Konfigurator MLAN-1000
Instrukcja obsługi Konfigurator MLAN-1000 Strona 2 z 8 SPIS TREŚCI 1. Logowanie... 3 2. Diagnostyka... 4 3. Konfiguracja sterownika... 5 3.1 Konfiguracja sterownika aktualizacja oprogramowania... 5 4.
dziennik Instrukcja obsługi
Ham Radio Deluxe dziennik Instrukcja obsługi Wg. Simon Brown, HB9DRV Tłumaczenie SP4JEU grudzień 22, 2008 Zawartość 3 Wprowadzenie 5 Po co... 5 Główne cechy... 5 baza danych 7 ODBC... 7 Który produkt
AKTYWNY SAMORZĄD. Instrukcja instalacji, aktualizacji i konfiguracji. www.as.tylda.pl
AKTYWNY SAMORZĄD Instrukcja instalacji, aktualizacji i konfiguracji TYLDA Sp. z o.o. 65-001 Zielona Góra ul. Wazów 6a tel. 68 324-24-72 68 325-75-10 www.tylda.pl tylda@tylda.pl wersja 1.0 2013.04.12 2
Podręcznik Użytkownika aplikacji iplus manager CDMA
Podręcznik Użytkownika aplikacji iplus manager CDMA iplus CDMA wita w świecie internetu! iplus CDMA to nowy wymiar internetu w Plusie. Połączenie zalet internetu mobilnego i stacjonarnego. Łącz się z siecią
Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;
14.3. Podstawy obsługi X Window 14.3. Podstawy obsługi X Window W przeciwieństwie do systemów Windows system Linux nie jest systemem graficznym. W systemach Windows z rodziny NT powłokę systemową stanowi
1. Przypisy, indeks i spisy.
1. Przypisy, indeks i spisy. (Wstaw Odwołanie Przypis dolny - ) (Wstaw Odwołanie Indeks i spisy - ) Przypisy dolne i końcowe w drukowanych dokumentach umożliwiają umieszczanie w dokumencie objaśnień, komentarzy
Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz
Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania
Symfonia Produkcja Instrukcja instalacji. Wersja 2013
Symfonia Produkcja Instrukcja instalacji Wersja 2013 Windows jest znakiem towarowym firmy Microsoft Corporation. Adobe, Acrobat, Acrobat Reader, Acrobat Distiller są zastrzeżonymi znakami towarowymi firmy
Informatyka II. Laboratorium Aplikacja okienkowa
Informatyka II Laboratorium Aplikacja okienkowa Założenia Program będzie obliczał obwód oraz pole trójkąta na podstawie podanych zmiennych. Użytkownik będzie poproszony o podanie długości boków trójkąta.
INSTRUKCJA OBSŁUGI DIODOWEGO WYŚWIETLACZA TEKSTÓW PIEŚNI STEROWANEGO Z TABLETU 10,1 '
INSTRUKCJA OBSŁUGI DIODOWEGO WYŚWIETLACZA TEKSTÓW PIEŚNI STEROWANEGO Z TABLETU 10,1 ' -1- Spis treści - 1. O programie... 3 2. Uruchomienie programu... 3 3. Przygotowanie urządzenia do pracy... 4 4. Wyświetlanie
Java jako język programowania
Java jako język programowania Interpretowany programy wykonują się na wirtualnej maszynie (JVM Java Virtual Machine) Składnia oparta o język C++ W pełni zorientowany obiektowo (wszystko jest obiektem)