Я пытаюсь создать apk моего проекта Android с Proguard. Я получаю следующее предупреждение при попытке создания подписанного APK:Skobbler MapRenderer Warning ProGuard
Я использую Skobbler SDK 2.5.1 и Android SDK компиляции версии 23.
Это кажется, что проблема связана с класс FloathMath, который теперь устарел.
Заранее благодарен!
(Update1):
Build fingerprint: 'Xiaomi/cancro/cancro:6.0.1/MMB29M/6.3.17:user/release-keys'
Revision: '0'
ABI: 'arm'
pid: 32188, tid: 32188, name: sal.bisite.example>>> es.usal.bisite.example<<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'art/runtime/java_vm_ext.cc:410] JNI DETECTED ERROR IN APPLICATION: JNI NewGlobalRef called with pending exception java.lang.ClassNotFoundException: Didn't find class "com.skobbler.ngx.navigation.SKCrossingDescriptor" on path: DexPathList[[zip file "/data/app/es.usal.bisite.example-1/base.apk"],nativeLibraryDirectories=[/data/app/es.usal.bisite.example-1/lib/arm, /data/app/es.usal.bisite.example-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]'
r0 00000000 r1 00007dbc r2 00000006 r3 b6f3bb7c
r4 b6f3bb84 r5 b6f3bb34 r6 0000000b r7 0000010c
r8 b4abf378 r9 b4c6a800 sl 00000001 fp 00000001
ip 00000006 sp be84fe68 lr b6ca0c51 pc b6ca3040 cpsr 40070010
backtrace:
#00 pc 00042040 /system/lib/libc.so (tgkill+12)
#01 pc 0003fc4d /system/lib/libc.so (pthread_kill+32)
#02 pc 0001c3fb /system/lib/libc.so (raise+10)
#03 pc 000195ad /system/lib/libc.so (__libc_android_abort+34)
#04 pc 00017500 /system/lib/libc.so (abort+4)
#05 pc 003339f9 /system/lib/libart.so (art::Runtime::Abort()+228)
#06 pc 000f460b /system/lib/libart.so (art::LogMessage::~LogMessage()+2226)
#07 pc 0025aa5f /system/lib/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+1550)
#08 pc 0025ae0d /system/lib/libart.so (art::JavaVMExt::JniAbortV(char const*, char const*, std::__va_list)+64)
#09 pc 000fd1e1 /system/lib/libart.so (art::ScopedCheck::AbortF(char const*, ...)+32)
#10 pc 001022f5 /system/lib/libart.so (art::ScopedCheck::Check(art::ScopedObjectAccess&, bool, char const*, art::JniValueType*) (.constprop.95)+5072)
#11 pc 001146e1 /system/lib/libart.so (art::CheckJNI::NewGlobalRef(_JNIEnv*, _jobject*)+392)
#12 pc 000fb13b /data/app/es.usal.bisite.example-1/lib/arm/libngnative.so (JniNG::JniNG(_JavaVM*, _JNIEnv*&)+554)
#13 pc 000e1d6f /data/app/es.usal.bisite.example-1/lib/arm/libngnative.so (JNI_OnLoad+58)
#14 pc 0025b397 /system/lib/libart.so (art::JavaVMExt::LoadNativeLibrary(_JNIEnv*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, _jobject*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*)+1238)
#15 pc 002d145f /system/lib/libart.so (art::Runtime_nativeLoad(_JNIEnv*, _jclass*, _jstring*, _jobject*, _jstring*)+194)
#16 pc 739f427d /data/dalvik-cache/arm/[email protected]@boot.oat (offset 0x235e000)
(UPDATE2) я решить эту проблему, добавив это правило Proguard:
#SKOBBLER
-keep class com.skobbler.** { *; }
Не могли бы вы сказать мне некоторые конкретные правила?
Заранее благодарен!
es, теперь это работает, и предупреждение исчезло. Но теперь во время выполнения у меня есть следующая проблема: ** (ОБНОВЛЕНИЕ 1) ** –
Остается ли проблема? – SylviA
Я решаю это, добавляя правило Proguard: ** (ОБНОВЛЕНИЕ 2) ** –