2016-08-16 6 views
0

Gradle을 사용하지 않고 Android Mapbox 라이브러리를 모듈로 추가하려고합니다. 따라서 Mapbox에서 고려하지 않은 사용 사례에 맞게 몇 줄의 코드를 간단하게 수정할 수 있습니다. repo에 복제하고, Android Studio를 사용하여 모듈을 가져오고, 내 프로젝트 빌드에 의존성으로 추가합니다. (compile project(':MapboxGLAndroidSDK')) settings.gradle에는 include ':app', ':MapboxGLAndroidSDK'도 추가됩니다.Mapbox SDK를 모듈로 추가 할 수 없습니다.

구축하려고 할 때, 그러나, 우리는 다음과 같은 예외를 얻을 :

FATAL EXCEPTION: main 
                     Process: com.gc.avt.display, PID: 15839 
                     java.lang.RuntimeException: Unable to start activity ComponentInfo{com.gc.avt.display/com.gc.avt.display.MainActivity}: android.view.InflateException: Binary XML file line #9: Binary XML file line #9: Error inflating class com.mapbox.mapboxsdk.maps.MapView 
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3256) 
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3352) 
                      at android.app.ActivityThread.access$1100(ActivityThread.java:223) 
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1797) 
                      at android.os.Handler.dispatchMessage(Handler.java:102) 
                      at android.os.Looper.loop(Looper.java:158) 
                      at android.app.ActivityThread.main(ActivityThread.java:7231) 
                      at java.lang.reflect.Method.invoke(Native Method) 
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 
                     Caused by: android.view.InflateException: Binary XML file line #9: Binary XML file line #9: Error inflating class com.mapbox.mapboxsdk.maps.MapView 
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:551) 
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:429) 
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:380) 
                      at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280) 
                      at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 
                      at com.gc.avt.display.MainActivity.onCreate(MainActivity.java:100) 
                      at android.app.Activity.performCreate(Activity.java:6877) 
                      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136) 
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3209) 
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3352)  
                      at android.app.ActivityThread.access$1100(ActivityThread.java:223)  
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1797)  
                      at android.os.Handler.dispatchMessage(Handler.java:102)  
                      at android.os.Looper.loop(Looper.java:158)  
                      at android.app.ActivityThread.main(ActivityThread.java:7231)  
                      at java.lang.reflect.Method.invoke(Native Method)  
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)  
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)  
                     Caused by: android.view.InflateException: Binary XML file line #9: Error inflating class com.mapbox.mapboxsdk.maps.MapView 
                      at android.view.LayoutInflater.createView(LayoutInflater.java:657) 
                      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776) 
                      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716) 
                      at android.view.LayoutInflater.rInflate(LayoutInflater.java:847) 
                      at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810) 
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:527) 
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:429)  
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:380)  
                      at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280)  
                      at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)  
                      at com.gc.avt.display.MainActivity.onCreate(MainActivity.java:100)  
                      at android.app.Activity.performCreate(Activity.java:6877)  
                      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)  
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3209)  
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3352)  
                      at android.app.ActivityThread.access$1100(ActivityThread.java:223)  
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1797)  
                      at android.os.Handler.dispatchMessage(Handler.java:102)  
                      at android.os.Looper.loop(Looper.java:158)  
                      at android.app.ActivityThread.main(ActivityThread.java:7231)  
                      at java.lang.reflect.Method.invoke(Native Method)  
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)  
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)  
                     Caused by: java.lang.reflect.InvocationTargetException 
                      at java.lang.reflect.Constructor.newInstance(Native Method) 
                      at android.view.LayoutInflater.createView(LayoutInflater.java:631) 
                      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776)  
                      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716)  
                      at android.view.LayoutInflater.rInflate(LayoutInflater.java:847)  
                      at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810)  
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:527)  
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:429)  
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:380)  
                      at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280)  
                      at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)  
                      at com.gc.avt.display.MainActivity.onCreate(MainActivity.java:100)  
                      at android.app.Activity.performCreate(Activity.java:6877)  
                      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)  
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3209)  
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3352)  
                      at android.app.ActivityThread.access$1100(ActivityThread.java:223)  
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1797)  
                      at android.os.Handler.dispatchMessage(Handler.java:102)  
                      at android.os.Looper.loop(Looper.java:158)  
                      at android.app.ActivityThread.main(ActivityThread.java:7231)  
                      at java.lang.reflect.Method.invoke(Native Method)  
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)  
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)  
                     Caused by: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.gc.avt.display-1/base.apk"],nativeLibraryDirectories=[/data/app/com.gc.avt.display-1/lib/arm64, /data/app/com.gc.avt.display-1/base.apk!/lib/arm64-v8a, /vendor/lib64, /system/lib64]]] couldn't find "libmapbox-gl.so" 
                      at java.lang.Runtime.loadLibrary(Runtime.java:367) 
                      at java.lang.System.loadLibrary(System.java:1076) 
                      at com.mapbox.mapboxsdk.maps.NativeMapView.<clinit>(NativeMapView.java:50) 
                      at com.mapbox.mapboxsdk.maps.MapView.initialize(MapView.java:204) 
                      at com.mapbox.mapboxsdk.maps.MapView.<init>(MapView.java:171) 
                      at java.lang.reflect.Constructor.newInstance(Native Method)  
                      at android.view.LayoutInflater.createView(LayoutInflater.java:631)  
                      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776)  
                      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716)  
                      at android.view.LayoutInflater.rInflate(LayoutInflater.java:847)  
                      at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810)  
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:527)  
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:429)  
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:380)  
                      at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280)  
                      at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)  
                      at com.gc.avt.display.MainActivity.onCreate(MainActivity.java:100)  
                      at android.app.Activity.performCreate(Activity.java:6877)  
                      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)  
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3209)  
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3352)  
                      at android.app.ActivityThread.access$1100(ActivityThread.java:223)  
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1797)  
                      at android.os.Handler.dispatchMessage(Handler.java:102)  
                      at android.os.Looper.loop(Looper.java:158)  
                      at android.app.ActivityThread.main(ActivityThread.java:7231)  
                      at java.lang.reflect.Method.invoke(Native Method)  
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)  
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)  

은이 모듈 실행하는 방법에 대한

static { 
    System.loadLibrary("mapbox-gl"); 
} 

어떤 아이디어를 실행하려고 할 때 던지고 Mapbox처럼 보인다 바르게?

답변

1

소스에서 빌드 할 때 Android 애플리케이션에서 Mapbox GL을 작동시키는 것이 어려울 수 있습니다. 기능에 따라 우리의 Github page에 요청 기능을 권유하거나 귀하의 기능으로 풀 요청을 열어 기여할 수도 있습니다. 여전히 응용 프로그램에 모듈로 소스 코드를 추가하려면 누락 된 몇 가지 단계가 더 있습니다. 프로젝트에 C++ "핵심"파일을 포함하고 있는지 확인하고, make android 등을 사용하여 컴파일해야합니다. 또한 프로젝트를 빌드하는 데 필요한 모든 의존성이 있는지 확인해야합니다. 우리는 설치 과정을 안내 할 레노에 a good guide을 가지고 있습니다.

관련 문제