2014-07-26 2 views
4

내 안드로이드 앱에서 MAPBOX SDK를 사용하려고합니다. 내 레이아웃으로 이동하려고 할 때 나는 현재 20지도 레이아웃이 XML 레이아웃에서 렌더링되지 않습니다.보기

그러나 안드로이드 SDK와 함께 Mapbox 0.3을 사용하고 난 다음 오류 얻을 :

The following classes could not be instantiated: 
- com.mapbox.mapboxsdk.views.MapView (Open Class, Show Exception) 
Tip: Use View.isInEditMode() in your custom views to skip code or show sample data when  shown in the IDE 

java.lang.UnsupportedOperationException: Unsupported Service: connectivity 
at com.android.layoutlib.bridge.android.BridgeContext.getSystemService(BridgeContext.java:465) 
at com.mapbox.mapboxsdk.tileprovider.modules.NetworkAvailabilityCheck.<init>(NetworkAvailabilityCheck.java:20) 
at com.mapbox.mapboxsdk.tileprovider.MapTileLayerArray.<init>(MapTileLayerArray.java:68) 
at com.mapbox.mapboxsdk.tileprovider.MapTileLayerArray.<init>(MapTileLayerArray.java:51) 
at com.mapbox.mapboxsdk.tileprovider.MapTileLayerBasic.<init>(MapTileLayerBasic.java:24) 
at com.mapbox.mapboxsdk.views.MapView.<init>(MapView.java:191) 
at com.mapbox.mapboxsdk.views.MapView.<init>(MapView.java:245) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) 
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
at java.lang.reflect.Constructor.newInstance(Constructor.java:526) 
at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:375) 
at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:100) 
at com.android.tools.idea.rendering.LayoutlibCallback.loadView(LayoutlibCallback.java:172) 
at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:206) 
at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:131) 
at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:755) 
at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64) 
at android.view.LayoutInflater.rInflate(LayoutInflater.java:727) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:373) 
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:393) 
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:337) 
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:332) 
at com.android.tools.idea.rendering.RenderService$3.compute(RenderService.java:575) 
at com.android.tools.idea.rendering.RenderService$3.compute(RenderService.java:564) 
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:932) 
at com.android.tools.idea.rendering.RenderService.createRenderSession(RenderService.java:564) 
at com.android.tools.idea.rendering.RenderService.render(RenderService.java:691) 
at org.jetbrains.android.uipreview.AndroidLayoutPreviewToolWindowManager.doRender(AndroidLayoutPreviewToolWindowManager.java:586) 
at org.jetbrains.android.uipreview.AndroidLayoutPreviewToolWindowManager.access$1900(AndroidLayoutPreviewToolWindowManager.java:80) 
at org.jetbrains.android.uipreview.AndroidLayoutPreviewToolWindowManager$6$1.run(AndroidLayoutPreviewToolWindowManager.java:528) 
at com.intellij.openapi.progress.impl.ProgressManagerImpl$2.run(ProgressManagerImpl.java:178) 
at com.intellij.openapi.progress.ProgressManager.executeProcessUnderProgress(ProgressManager.java:209) 
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:212) 
at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:171) 
at org.jetbrains.android.uipreview.AndroidLayoutPreviewToolWindowManager$6.run(AndroidLayoutPreviewToolWindowManager.java:523) 
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:320) 
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:310) 
at com.intellij.util.ui.update.MergingUpdateQueue$2.run(MergingUpdateQueue.java:254) 
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:269) 
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:227) 
at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:217) 
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238) 
at com.intellij.util.Alarm$Request$1.run(Alarm.java:327) 
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) 
at java.util.concurrent.FutureTask.run(FutureTask.java:262) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
at java.lang.Thread.run(Thread.java:744) 

나는 또한 내 안드로이드 매니페스트

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.example.test.new31231" > 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name=".MyActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
</application> 
에 다음이를

apply plugin: 'com.android.application' 
android { 
compileSdkVersion 20 
buildToolsVersion "20.0.0" 

defaultConfig { 
    applicationId "com.example.test.new31231" 
    minSdkVersion 15 
    targetSdkVersion 20 
    versionCode 1 
    versionName "1.0" 
} 
buildTypes { 
    release { 
     runProguard false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 
} 
repositories { 
mavenCentral() 
} 
dependencies { 
compile ('com.mapbox.mapboxsdk:mapbox-android-sdk:[email protected]'){ 
    transitive=true 
} 
compile ('com.cocoahero.android:geojson:[email protected]'){ 
    transitive=true 
} 
} 
다음은

내 build.gradle 파일입니다

모든 도움을 주시면 대단히 감사하겠습니다.

답변

1

내가 레이아웃 다음 예

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       xmlns:mapbox="http://schemas.android.com/apk/res-auto" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:background="#00000000" 
       android:orientation="vertical"> 

       <com.mapbox.mapboxsdk.views.MapView 
         android:id="@+id/map" 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         mapbox:mapid="username.xxx12345" /> 

</LinearLayout> 
+0

나는 4.1.1에 시도했지만 작동하지 않는처럼

xmlns:mapbox="http://schemas.android.com/apk/res-auto" 

의 루트 요소에 다음 줄을 포함하여 그것을 해결 한이 어떤이다 다른 제안 ?? –

관련 문제