Posty

Zapisywanie dużych plików z użyciem kodów QR - część 2, implementacja

Obraz
Witajcie. W poprzedniej części opisałem (zaproponowałem) sposób zapisu pliku w formie tekstów równej długości, które można zapisać np. na wielu kodach QR. Można go przeczytać tutaj: https://wojtekb30.blogspot.com/2025/02/zapisywanie-duzych-plikow-z-uzyciem.html Napisałem w języku Python implementację mojego pomysłu. Podzieliłem ją na osobną klasę kodera i dekodera: import os import base64 import hashlib class FileToStringsCoder: def __init__(self, file_path: str, max_string_lenght: int): if not os.path.exists(file_path): raise Exception("Error: the file does not exist.") self.max_string_lenght = max_string_lenght self.file_name = os.path.basename(file_path) try: self.extension = self.file_name.split(".")[-1] except: print("Failed to get file's extension, assuming .bin") self.extension = "bin" total_min_lenght = 40 + len(self.e...

Zapisywanie dużych plików z użyciem kodów QR - część 1, zarys teoretyczny

Obraz
Witajcie! Ostatnio rozważałem możliwość zapisu dużych plików na wielu kodach QR albo tagach NFC. Wymyśliłem sposób, w jaki można to osiągnąć, i chciałbym go tutaj opisać. Zapewnie każdy z Was zna kody QR - dwuwymiarowe grafiki, które można zeskanować z użyciem telefonu aby odczytać zakodowany w nich tekst. Najczęściej są one wykorzystywane do zapisywania adresów URL (które prowadzą do stron internetowych lub plików), albo krótkich tekstów. Aplikacje odczytujące kody QR często rozpoznają wzory tekstów, aby np. odczytać informacje zakodowane w kodzie QR od razu jako kontakt. Przykładowo tekst zapisany w formie  WIFI:S:<SSID>;T:<WEP|WPA|nopass>;P:<PASSWORD>;H:<true|false|blank>;; pozwala odczytać kod QR od razu jako konfigurację połączenia z Wi-fi. Kody QR (tak samo jak tagi NFC) mają dość małą pojemność. Wg. Wikipedii jest ona następująca (maksymalna ilość symboli dla kolejno liczb, znaków alfanumerycznych, bajtów, Kanji (Azjatycki alfabet)): Nawet jeżeli teor...

Jak zainstalować dowolną aplikację na zegarku z systemem Android Wear, czyli o ADB (Android Debug Bridge)

Obraz
Witajcie! W tym artykule napiszę, jak instalować aplikacje z użyciem narzędzia o nazwie ADB. Z jego pomocą można robić wiele rzeczy z urządzeniami z systemem Android (telefony, zegarki z systemem Android Wear, telewizory i przystawki smart TV z systemem Android TV lub Google TV).  Czym jest ADB? ADB czyli Android Debug Bridge to narzędzie przeznaczone dla deweloperów. Jeśli mieliście do czynienia z programowaniem aplikacji mobilnych dla systemu Android najprawdopodobniej korzystaliście już z niego, nawet nieświadomie. ADB umożliwia bardzo wiele, zbyt wiele by wszystko opisać w jednym artykule (chyba że bardzo długim), dlatego w tym artykule skupię się na podstawowym zastosowaniu, czyli instalowaniu aplikacji na urządzeniu z Androidem z poziomu komputera.  Procedura ta wygląda podobnie na wszystkich urządzeniach z Androidem. Wymagania: - Komputer - Urządzenie z Androidem - Sieć Wi-Fi (można też użyć kabla USB lub Bluetooth, ja będę jednak korzystać z ADB przez sieć) - Podstawow...

Projekt: Aplikacja UWP (C#) - Jak skompilować aplikację UWP i uruchomić ją na innym komputerze

Obraz
Witajcie! Doszedłem do wniosku, że przed kontynowaniem rozwoju aplikacji z tego poradnika powinienem powiedzieć, jak taką aplikację skompilować i wydać, aby mogli skorzystać z niej inni. W przypadku aplikacji UWP jest to nieco trudniejsze niż po prostu kompilacja pliku .exe. Z poziomu Visual Studio aplikację UWP można skompilować do pakietu albo opublikować w Microsoft Store. Druga opcja jest jednak bardziej skomplikowanym procesem wymagającym konta dewelopera, opiszę więc go w innym artykule w przyszłości. Kompilacja do pakietu wystarcza, aby opublikować aplikację poza Microsoft Store czy podzielić się nią ze znajomymi. Jak to zrobić?: W Eksploratorze Rozwiązań klikamy na naszą aplikację (jako całość) prawym przyciskiem myszy. Następnie wybieramy Publikuj -> Utwórz pakiety aplikacji: Następnie otworzy się nowe okno tworzenia pakietów. Na pierwszym ekranie musimy wybrać metodę dystrybucji. Wybierzmy Pobieranie lokalne. Możemy też wyłączyć automatyczne aktualizacje. Następnie klikamy...

Projekt: Aplikacja UWP (C#) - Struktura projektu, tworzymy bardzo podstawową aplikację "Hello world!" (cz. 2)

Obraz
Witajcie! W poprzedniej części stworzyliśmy projekt aplikacji UWP.  W tej części wyjaśnię strukturę projektu oraz stworzymy bardzo podstawową aplikację. Na początek jednak skompilujmy i uruchommy to, co jest. Aby to zrobić, trzeba wcisnąć przycisk "Play" "Maszyna lokalna": Jeżeli proces się udał, powinna uruchomić się pusta aplikacja z czarnym ekranem: Aplikacja powinna także się pojawić na liście aplikacji w menu start: Zamknijmy ją jednak na teraz i przejdźmy do struktury naszego projektu. Folder Assets (niebieska strzałka) zawiera dodatkowe elementy naszej aplikacji, jak grafiki. W nowym projekcie są tam puste grafiki ikony dla naszej aplikacji, które można dostosować. Przejdźmy jednak do ostatniego elementu, czyli Package.appxmanifest (czerwona strzałka). Plik ten zawiera konfigurację i informacje o aplikacji. Po jego otwarciu ukaże nam się ekran pozwalający ustawić nazwę aplikacji, opis, informacje o języku, orientację, wygenerować lub ustawić ikony, nadać upra...

Projekt: Aplikacja UWP (C#) - Wstęp, tworzymy projekt (cz. 1)

Obraz
Witajcie!       W tej serii artykułów przedstawię tworzenie i rozwój aplikacji UWP, czyli Universal Windows Platform (Uniwersalna Platforma Systemu Windows). Jest to także mój pierwszy taki artykuł.      Na początku wyjaśnię jednak czym UWP jest. Otóż jest to interfejs API stworzony przez Microsoft pozwalający na programowanie uniwersalnych aplikacji. Te kompatybilne są z Windows 10 i 11, Xbox One i Series, HoloLens oraz niewspieranym już systemem Windows Mobile. Dzięki temu nie jest konieczne wielokrotne pisanie i kompilowanie programu na każdą z tych platform osobno. Aplikację UWP można napisać w Visual Basic lub C#, wykorzystują one także XAML. Będę jednak korzystał z C#. Aplikacje w Microsoft Store są aplikacjami UWP.  [oficjalna infografika autorstwa Microsoft] Konfiguracja:      Aby tworzyć aplikacje UWP potrzebne jest IDE Visual Studio. Ja korzystam z Visual Studio Community 2019.  Po instalacji Visual Studio trzeba otwo...