Próbuję uzyskać podpisany plik APK od zaćmienia. Mam wersję debuggable apk, która działa dobrze. Teraz, gdy próbowałem skompilować i podpisać z Eclipse ADT, otrzymuję wiele ostrzeżeń, z których większość to can't find superclass or interface some.package.Class
. Tak więc odniosłem się do this, this i wielu innych niestety nie udało mi się dotrzeć nigdzie!Android Tryb debugowania apk działa dobrze, ale tryb zwolnienia daje zbyt wiele ostrzeżeń
ja również uzyskać Note: there were 314 duplicate class definitions.
ostrzeżenie
Moja progaurd-project.txt było nietknięte wcześniej. Dlatego dodałem -libraryjars /libs/lib-name
dla każdego z słoików obecnych w folderze /EcliseProject/libs/
. Więc wymyśliłem następujące:
-libraryjars /libs/android-support-v4.jar -libraryjars /libs/apache-mime4j-core-0.7.2.jar -libraryjars /libs/gcm.jar -libraryjars /libs/httpclient-4.3.3.jar -libraryjars /libs/httpcore-4.3.2.jar -libraryjars /libs/httpmime-4.3.3.jar -libraryjars /libs/library.jar -libraryjars /libs/nineoldandroids-2.4.0.jar
Pod koniec tego mam kilka 1800+ ostrzeżenia większość z nich jest nie znalezienie superklasę lub interfejsu, jak wspomniano powyżej. Dostałem słoiki z tymi klasami i umieściłem je również w/lib/folderze i dodałem -libraryjars
wpisów, w tym rt.jar
itd. Potem dostałem jeszcze więcej ostrzeżeń, niektóre z nich mówiły: library class org.xmlpull.v1.XmlPullParser depends on program class java.lang.String
.
Próbowałem dodać -dontskipnonpubliclibraryclasses
, dodając niektóre -dontwarn
itp. Nic nie działało tak daleko.
W pewnym momencie zachowałem wystarczającą liczbę -dontwarn
, aby utworzyć plik APK, ale po prostu wyświetlił ekran logowania (pierwsza aktywność) i po kliknięciu przycisku utknął tam.
Brakuje mi czegoś bardzo podstawowego, jak sądzę. Przez te wszystkie dni testowałem z użyciem trybu diagnostycznego apk, który działa normalnie. Dlaczego ten problem? Proszę pomóż!!