0

私はウェブを検索していて、私にはうまくいきません。私は最近Android Simulatorで新しいプロジェクトを作成し、Google Maps Templateを選択しました。私はhttps://developers.google.com/maps/documentation/android-api/startの指示に従って、私が初めてすべてのことを正しく行ったことを確認しました。私の不名誉に、私は同じエラーが発生します。Googleマップでエラーが発生するクラスフラグメントエラー

まず、ここで私のMapsActivity.javaです:第二に

import android.support.v4.app.FragmentActivity; 
import android.os.Bundle; 

import com.google.android.gms.maps.CameraUpdateFactory; 
import com.google.android.gms.maps.GoogleMap; 
import com.google.android.gms.maps.OnMapReadyCallback; 
import com.google.android.gms.maps.SupportMapFragment; 
import com.google.android.gms.maps.model.LatLng; 
import com.google.android.gms.maps.model.MarkerOptions; 

public class MapsActivity extends FragmentActivity implements OnMapReadyCallback { 

    private GoogleMap mMap; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_maps); 
     // Obtain the SupportMapFragment and get notified when the map is ready to be used. 
     SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager() 
       .findFragmentById(R.id.map); 
     mapFragment.getMapAsync(this); 
    } 


    /** 
    * Manipulates the map once available. 
    * This callback is triggered when the map is ready to be used. 
    * This is where we can add markers or lines, add listeners or move the camera. In this case, 
    * we just add a marker near Sydney, Australia. 
    * If Google Play services is not installed on the device, the user will be prompted to install 
    * it inside the SupportMapFragment. This method will only be triggered once the user has 
    * installed Google Play services and returned to the app. 
    */ 
    @Override 
    public void onMapReady(GoogleMap googleMap) { 
     mMap = googleMap; 

     // Add a marker in Sydney and move the camera 
     LatLng sydney = new LatLng(-34, 151); 
     mMap.addMarker(new MarkerOptions().position(sydney).title("Marker in Sydney")); 
     mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)); 
    } 
} 

、私のactivity_maps.xml:

<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:map="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/map" 
    android:name="com.google.android.gms.maps.SupportMapFragment" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context="com.xenicdev.mapstest.MapsActivity" /> 

そして最後に、私のエラー:

05-13 19:47:40.542 3052-3052/com.xenicdev.mapstest E/AndroidRuntime: FATAL EXCEPTION: main 
Process: com.xenicdev.mapstest, PID: 3052 
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xenicdev.mapstest/com.xenicdev.mapstest.MapsActivity}: android.view.InflateException: Binary XML file line #1: Binary XML file line #1: Error inflating class fragment 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
at android.app.ActivityThread.-wrap11(ActivityThread.java) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:148) 
at android.app.ActivityThread.main(ActivityThread.java:5417) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
Caused by: android.view.InflateException: Binary XML file line #1: Binary XML file line #1: Error inflating class fragment 
at android.view.LayoutInflater.inflate(LayoutInflater.java:539) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:374) 
at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:393) 
at android.app.Activity.setContentView(Activity.java:2166) 
at com.xenicdev.mapstest.MapsActivity.onCreate(MapsActivity.java:20) 
at android.app.Activity.performCreate(Activity.java:6237) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
at android.app.ActivityThread.-wrap11(ActivityThread.java)  
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
at android.os.Handler.dispatchMessage(Handler.java:102)  
at android.os.Looper.loop(Looper.java:148)  
at android.app.ActivityThread.main(ActivityThread.java:5417)  
at java.lang.reflect.Method.invoke(Native Method)  
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  
Caused by: android.view.InflateException: Binary XML file line #1: Error inflating class fragment 
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:782) 
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:423)  
at android.view.LayoutInflater.inflate(LayoutInflater.java:374)  
at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:393)  
at android.app.Activity.setContentView(Activity.java:2166)  
at com.xenicdev.mapstest.MapsActivity.onCreate(MapsActivity.java:20)  
at android.app.Activity.performCreate(Activity.java:6237)  
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)  
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)  
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
at android.app.ActivityThread.-wrap11(ActivityThread.java)  
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
at android.os.Handler.dispatchMessage(Handler.java:102)  
at android.os.Looper.loop(Looper.java:148)  
at android.app.ActivityThread.main(ActivityThread.java:5417)  
at java.lang.reflect.Method.invoke(Native Method)  
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.io.File.mkdir()' on a null object reference 
at com.google.maps.api.android.lib6.gmm6.m.ad.a(Unknown Source) 
at com.google.maps.api.android.lib6.gmm6.c.h.a(Unknown Source) 
at com.google.maps.api.android.lib6.gmm6.c.y.a(Unknown Source) 
at com.google.maps.api.android.lib6.e.bd.a(Unknown Source) 
at com.google.maps.api.android.lib6.e.ev.a(Unknown Source) 
at com.google.maps.api.android.lib6.e.z.a(Unknown Source) 
at com.google.maps.api.android.lib6.e.y.a(Unknown Source) 
at com.google.android.gms.maps.internal.u.onTransact(SourceFile:107) 
at android.os.Binder.transact(Binder.java:387) 
at com.google.android.gms.maps.internal.IMapFragmentDelegate$zza$zza.onCreateView(Unknown Source) 
at com.google.android.gms.maps.SupportMapFragment$zza.onCreateView(Unknown Source) 
at com.google.android.gms.dynamic.zza$4.zzb(Unknown Source) 
at com.google.android.gms.dynamic.zza.zza(Unknown Source) 
at com.google.android.gms.dynamic.zza.onCreateView(Unknown Source) 
at com.google.android.gms.maps.SupportMapFragment.onCreateView(Unknown Source) 
at android.support.v4.app.Fragment.performCreateView(Fragment.java:1974) 
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1036) 
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1230) 
at android.support.v4.app.FragmentManagerImpl.addFragment(FragmentManager.java:1332) 
at android.support.v4.app.FragmentManagerImpl.onCreateView(FragmentManager.java:2288) 
at android.support.v4.app.FragmentController.onCreateView(FragmentController.java:120) 
at android.support.v4.app.FragmentActivity.dispatchFragmentsOnCreateView(FragmentActivity.java:356) 
at android.support.v4.app.BaseFragmentActivityHoneycomb.onCreateView(BaseFragmentActivityHoneycomb.java:31) 
at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:79) 
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:754) 
... 19 mo 
は、
+0

あなたはきれいにしてプロジェクトを再構築しましたか? –

+0

は、アクティビティのレイアウトファイルを共有します –

+0

他のレイアウトファイルはありません。このプロジェクトにはテンプレートファイルしかありません。それはまだ動作するはずです。 – TheAnonymous010

答えて

0

を使用する必要があり、私が働いていた、新しいプロジェクトを作りました。このエラーの原因を説明することはできませんが、私の次のGoogle APIアップデートを待って新しいプロジェクトを開始するのが唯一の回避策であることがわかりました。

+0

どのAPIバージョンが完璧に機能しているか教えてください。 –

+0

しばらくしていたので正直にはできません。私はこの問題が繰り返されていないので、最新のバージョンが動作するはずです。 – TheAnonymous010

+0

私はマニフェストファイルからマップキーを削除することで問題を解決しました。 geo.API_KEYを使用すると、MAP_KEYも使用する必要はありません。したがって、マニフェストからマップキーを削除することで、私の問題が解決しました。とにかくありがとうございました。 –

0

XMLが間違っています。あなたは、GoogleのAPIを更新した後、私はそれを除いて私の問題への本当の答えを見つけることができます

class="com.google.android.gms.maps.SupportMapFragment" 

ない

android:name="com.google.android.gms.maps.SupportMapFragment" 
+0

残念ながら、これで問題は解決されませんでした。私はそれを試して、私は同じ正確なエラーを取得します。 – TheAnonymous010

0

わかりました。私はこの同じ種類のエラーを時々前にも持っていました。しかし、私が実装したのは、代わりにSupportMapFragmentを使用しないことでした。私は以下のコードを使用しました。

MapFragment mapFragment = (MapFragment)getFragmentManager().findFragmentById(R.id.map); 
mapFragment.getMapAsync(this); 

私は自分のactivity_maps.xmlを変更しました。これを使用する代わりに。

android:name="com.google.android.gms.maps.SupportMapFragment" 

使用この

class="com.google.android.gms.maps.MapFragment" 

は、それが問題を解決を願っています。詳細なヘルプが必要な場合は、googlemapアプリで詳細に私に連絡することができます。単純な建物を完成させただけです。

1

私は、エラーメッセージを確認し、API_KEYのタグのように修正されるべき見つける:私は同じ問題を抱えていたが、私は

<meta-data 
    android:name="com.google.android.gms.version" 
    android:value="@integer/google_play_services_version" /> 

<meta-data 
    android:name="com.google.android.geo.API_KEY" 
    android:value="@string/google_maps_key" /> 

を入れていたので、私にとってはそれがあった

<meta-data android:name="com.google.android.geo.API_KEY" 
android:value="your api key"/> 
+0

私はそれを数回確認しました。 – TheAnonymous010

0

私のマニフェスト内の</application>タグの外側にあります。私がそれをその中に移動すると、そのエラーは消え去った。

関連する問題