Cześć,

Mam taki problem. Posiadamy w pracy aplikację na telefon, w której się ogarnia komentarze i jakieś wrzutki na serwer własny. Problem w tym, że ostatnio zaktualizowaliśmy telefony do Androida 14 i aplikacja przestała działać. Cofnąć aktualizacji się nie da a z chłopem co aplikację tworzył kontaktu brak. Teraz moje pytanie czy jest z tej sytuacji jakieś wyjście?

Zastanawiałem się czy da się jakoś z pliku apk pozyskać kod i spróbować go
@uncross89: Jak przejechał po apce proguardem to będzie ciężko, ale nie jest to niemożliwe. Nieobfuskowany bytekod javy w miarę dobrze się dekompiluje. Pytanie czy taniej nie będzie ogarnąć jakiegoś studenta wspartego chatem GPT żeby to od nowa napisał.
@uncross89: Dodatkowo co to znaczy ze przestała działać? #!$%@? się? Możesz wrzucić logcata? Możliwe ze tam leci błąd z jakimś opisem. Co do ewentualnej rekompilacji to masz 2 drogi.
- Dekompilujesz JADx i być może dostaniesz kod który się będzie kompilował, albo będzie wymagał pewnych poprawek. Ewentualnie będzie tylko baza pod przepisanie.
- Inna opcja to apktool, tam dostaniesz smali, taki czytelny bytecode. Można wtedy próbować podmienić albo poprawić pojedyncze klasy
Pierwsze kroki i frustracja ogromna... Czy nie można prościej jak c/c++/c#/lua/pyhon, siadasz do programowania i wiesz co robisz, a nie że masz setki pakietów różne wersje wiele ze sobą koliduje, a informacji o tym brak, więc gadaj z ai godzinami, lub szukaj w google, tworzysz nowy projekt chcesz dodać MapView, a tam kilka errorów że nie ta wersja pakietu który nie jest nawet widoczny w pliku build grandle. Jeżeli nawet na domyślnych
Bawił się ktoś w apkach pod Android Auto? Jest sobie radyjko RCD330 (picrel), całkiem popularne. Samo w sobie ma połączenie z CAN bo musi czytać przyciski kierownicy lub czy jest wrzucony wsteczny.

Moje pytanie jest następujące, czy jako dev mamy w takiej konfiguracji dostęp od strony aplikacji do danych po CANie? Gadamy bezpośrednio z autem czy może z jakimś protokołem od rcd330? Czy mamy dostęp do wszystkich danych (w tym danych silnika,
CXLV - Bawił się ktoś w apkach pod Android Auto? Jest sobie radyjko RCD330 (picrel), ...

źródło: img1

Pobierz
@CXLV Ale Android Auto samo w sobie jest aplikacją i pytanie czy nie ma w sobie zaszytej jakiejś kontroli aplikacji i czy nie blokują niezweryfikowanych aplikacji. Do tego pozostaje kwestia dostępu do API
Chciałbym zrobić małą apkę na Androida, ale na całkiem dobrym sprzęcie świeżo zainstalowany Android Studio działa okropnie. Czy wy tak żyjecie czy ja muszę coś dodatkowo konfigurować? Dodam, że chcę korzystać z emulatora bo Pair Wifi mi się rozłącza, a czasem w ogóle nie chce się łączyć. Kotlin mi odpowiada, nie chciałbym zmieniać na Xamarina. Emulator się tnie jakbym miał 512MB ramu :D

#androidstudio #androiddev
@Testuje_Toster: Nie mam i raczej nie przypominam sobie, żebym miał problemy z AS, ale ja korzystam z Macbooków, teraz mam z M1, więc raczej można powiedzieć, że wyższa półka ;)
Jest opcja przyznania większej pamięci Studio oraz emulatorowi też.
Co do pożerania zasobów, to pamiętaj, że to jest emulator, a nie symulator jak u konkurencji ;)

Połączenie po Wifi jest zawodne niestety, ale po kablu nie ma problemu. Można też używać
@mamniciwszystko: nie ma czegoś takiego jak lepiej i gorzej xD
to zależy.

Jeśli te fragmenty są jakaś jedną spójną częścią, np konkretnym flow to lepiej zrobić to na fragmentach, jeśli to są różne opcje w aplikacji to też możesz to tak zrobić, ale osobne activity będą czytelniejsze
Kurde #chwalesie udało mi się (na podstawie poradnika oczywiście) podpiąć pod przyciski latarkę.
Zaczynam widzieć potencjał w ogromie funkcji do wykorzystania w powiązaniu z logiką i jak się do nich dostać.
Nie będę dziś chyba spał z podjary.
Dlaczego jak generuję apk to na innym telefonie pod koniec instalacji pisze że nie udało się zainstalować?
Konieczna jest zabawa z manifestem?

#naukaprogramowania #androidstudio #java
GUI w Pythonie to katorga.
Od 12 godzin męczę się, żeby zrobić nowoczesne, funkcjonalne GUI pod operacje na plikach CSV i obiecuję, że się nie da. Ogarnąłem nawet CustomTkintera, ale po tym jak przez 3h z pomocą #chatgpt i niezliczonych stron i pełnej dokumentacji nie mogłem stworzyć rozwijanego menu podpiętego pod label to się poddałem. W zwykłym Tkinterze zajęło to 5 minut, ale rezultat graficzny jest taki, że właśnie dzwonil windows xp
Mam taki data class, żeby przy zbieraniu danych z Firestore, zebrać dokument do właśnie tej klasy tym kodem:

val user = docReference.toObject(User::class.java)
Problem w tym, że w Firestore mam w tym dokumencie jeszcze jedną kolekcje i przez tą kolekcje nie mogę już zmienić dokumentu na klasę User bo wtedy zwraca mi to tylko null (°°

Da się jakoś w data class
mamniciwszystko - Mam taki data class, żeby przy zbieraniu danych z Firestore, zebrać...

źródło: comment_1668896963Iour9NONDsHOEJOuW0AnO9.jpg

Pobierz
@mamniciwszystko: oczy szczypio od tego konstruktora, który zresztą, zdaje się, że jest zbędny. A co się dzieje, jak po prostu dodasz sobie pole w klasie?

import java.time.ZoneOffset.UTC
import java.time.ZonedDateTime

data class User(
var uid: String = "",
var nickname: String = "",
var email: String = "",
var description: String = "Prawda, jesteś ;)",
var avatar: String = "default",
var banReason: String = "",
var bannedBy: String = "",
var pin:
@mamniciwszystko: w Javie też to nie działa. Masz zasadniczo trzy opcje: każdą metodę nazwać inaczej, zrobić tylko jedną metodę generyczną, albo zrobić interfejs generyczny czyli wyciągnąć parametr generyczny na poziom interfejsu. Jednak w przypadku interfejsu generycznego niestety dana konkretna klasa może implementować tylko jeden taki interfejs na raz, a zatem nie da się zrobić klasy implementującej równocześnie CallListener oraz CallListener. No cóż, genericsy w Javie/Kotlinie są takie trochę niedorobione. W
@mamniciwszystko: to nie ma znaczenia Compose. Compose to tylko UI, równie dobrze mógłbyś skompilować kod do iOS i UI zrobić w SwiftUI. Powiem, ze teraz inaczej się programuje niż to co pokazałeś w tym przykładzie. Ogarnij coroutines jakieś view state powinno być lżej. Przejście xml na compose nie powinno zmieniać "dołu".