Wystąpił problem z awarią aplikacji GoogleMap v2 przy zmianie orientacji

Już od jakiegoś czasu radzę sobie z tym problemem. Użyłem tego pytania jako odniesienia:Używanie ActionBarSherlock z nowym SupportMapFragment

Obecnie używam ActionBarSherlock i używam dość prostej implementacji mapy Vipul Shah. Działa świetnie, robi dokładnie to, czego potrzebuję. Jednak w przypadku zmiany orientacji cała aplikacja ulega awarii. Oto mój dziennik:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.meetball_1/com.meetball_1.HomeActivity}: android.view.InflateException: Binary XML file line #17: Error inflating class fragment
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
    at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3740)
    at android.app.ActivityThread.access$700(ActivityThread.java:141)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1262)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:137)
    at android.app.ActivityThread.main(ActivityThread.java:5103)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:525)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
    at dalvik.system.NativeStart.main(Native Method)
    Caused by: android.view.InflateException: Binary XML file line #17: Error inflating class fragment
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:713)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:758)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
    at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:267)
    at com.actionbarsherlock.internal.ActionBarSherlockNative.setContentView(ActionBarSherlockNative.java:133)
    at com.actionbarsherlock.app.SherlockFragmentActivity.setContentView(SherlockFragmentActivity.java:261)
    at com.meetball_1.HomeActivity.onCreate(HomeActivity.java:70)
    at android.app.Activity.performCreate(Activity.java:5133)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
    ... 12 more
    Caused by: java.lang.IllegalStateException: Fragment com.google.android.gms.maps.SupportMapFragment did not create a view.
    at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:303)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:685)
    ... 24 more

Zdaję sobie sprawę, że z jakiegoś powodu widok nie jest tworzony i że błąd pochodzi z aplikacji, która nie zawyża mojego fragmentu klasy. Jak to naprawić, nie czyniąc sprawy zbyt skomplikowanymi, ponieważ uważam, że wdrożenie mapy było proste, więc powinno być moim rozwiązaniem. Oto mój fragment kodu XML:

<fragment android:id="@+id/map"
    android:layout_width="fill_parent"
    android:layout_height="230dp"
    android:layout_weight="1"
    class="com.google.android.gms.maps.SupportMapFragment"
    android:layout_gravity="center_horizontal|top" />

Oto mój odpowiedni fragment kodu:

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

 SupportMapFragment fragment = SupportMapFragment.newInstance();
        getSupportFragmentManager().beginTransaction()
                .add(R.id.map, fragment).commit();
}

Z góry dziękuję!

Próbowałem wszystkiego w tym momencie. Czy to błąd związany z Googlemapem? Jak to naprawić?

questionAnswers(2)

yourAnswerToTheQuestion