Witam. Nie dawno rozpocząłem swoją przygodę z pisaniem programów na platformę Android.
Niestety napotkałem pewien problem, w momencie dodania pola fragment z mapą w widoku aplikacja w momencie przejścia do niego wywala błąd. Robiłem wszystko zgodnie z poradnikiem na stronie: https://developers.google.com/maps/documentation/android/
Czy mógłby ktoś wskazać ewentualnie błąd jaki popełniłem.
Manifest:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.spr"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="21" />
<permission
android:name="com.example.spr.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-permission android:name="com.example.spr.permission.MAPS_RECEIVE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- Required to show current location -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- Required OpenGL ES 2.0. for Maps V2 -->
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="AIzaSyCWvO_AxEwfRuzYdw5V9IFEZfL3ZzCVTBE" />
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<activity
android:name=".Login"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Lokalizacja"
android:label="@string/title_activity_login" >
</activity>
<activity
android:name=".Rejestracja"
android:label="@string/title_activity_rejestracja" >
</activity>
<activity
android:name=".PrzyjecieActivity"
android:label="@string/title_activity_przyjecie" >
</activity>
</application>
</manifest>
W widoku:
<fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.MapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
Jeśli usunę w/w fragment aplikacja przechodzi do tego widoku bez problemu.
Logi błędu:
11-06 12:12:18.859: D/dalvikvm(13465): GC_CONCURRENT freed 151K, 48% free 2986K/5639K, external 63K/512K, paused 4ms+5ms
11-06 12:12:20.429: D/AndroidRuntime(13465): Shutting down VM
11-06 12:12:20.429: W/dalvikvm(13465): threadid=1: thread exiting with uncaught exception (group=0x40018560)
11-06 12:12:20.439: E/AndroidRuntime(13465): FATAL EXCEPTION: main
11-06 12:12:20.439: E/AndroidRuntime(13465): java.lang.IllegalStateException: Could not find a method RejestrListener(View) in the activity class com.example.spr.Login for onClick handler on view class android.widget.Button with id 'bRejestr'
11-06 12:12:20.439: E/AndroidRuntime(13465): at android.view.View$1.onClick(View.java:2152)
11-06 12:12:20.439: E/AndroidRuntime(13465): at android.view.View.performClick(View.java:2506)
11-06 12:12:20.439: E/AndroidRuntime(13465): at android.view.View$PerformClick.run(View.java:9112)
11-06 12:12:20.439: E/AndroidRuntime(13465): at android.os.Handler.handleCallback(Handler.java:587)
11-06 12:12:20.439: E/AndroidRuntime(13465): at android.os.Handler.dispatchMessage(Handler.java:92)
11-06 12:12:20.439: E/AndroidRuntime(13465): at android.os.Looper.loop(Looper.java:130)
11-06 12:12:20.439: E/AndroidRuntime(13465): at android.app.ActivityThread.main(ActivityThread.java:3835)
11-06 12:12:20.439: E/AndroidRuntime(13465): at java.lang.reflect.Method.invokeNative(Native Method)
11-06 12:12:20.439: E/AndroidRuntime(13465): at java.lang.reflect.Method.invoke(Method.java:507)
11-06 12:12:20.439: E/AndroidRuntime(13465): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864)
11-06 12:12:20.439: E/AndroidRuntime(13465): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622)
11-06 12:12:20.439: E/AndroidRuntime(13465): at dalvik.system.NativeStart.main(Native Method)
11-06 12:12:20.439: E/AndroidRuntime(13465): Caused by: java.lang.NoSuchMethodException: RejestrListener
11-06 12:12:20.439: E/AndroidRuntime(13465): at java.lang.ClassCache.findMethodByName(ClassCache.java:247)
11-06 12:12:20.439: E/AndroidRuntime(13465): at java.lang.Class.getMethod(Class.java:962)
11-06 12:12:20.439: E/AndroidRuntime(13465): at android.view.View$1.onClick(View.java:2145)
11-06 12:12:20.439: E/AndroidRuntime(13465): ... 11 more
11-06 12:12:50.729: I/Process(13465): Sending signal. PID: 13465 SIG: 9
11-06 12:17:12.639: D/dalvikvm(13622): GC_EXTERNAL_ALLOC freed 88K, 49% free 2785K/5379K, external 0K/0K, paused 124ms
11-06 12:17:12.709: I/dalvikvm(13622): Could not find method android.view.ViewGroup.onNestedScrollAccepted, referenced from method android.support.v7.internal.widget.ActionBarOverlayLayout.onNestedScrollAccepted
11-06 12:17:12.719: W/dalvikvm(13622): VFY: unable to resolve virtual method 11772: Landroid/view/ViewGroup;.onNestedScrollAccepted (Landroid/view/View;Landroid/view/View;I)V
11-06 12:17:12.719: D/dalvikvm(13622): VFY: replacing opcode 0x6f at 0x0000
11-06 12:17:12.719: D/dalvikvm(13622): VFY: dead code 0x0003-0015 in Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.onNestedScrollAccepted (Landroid/view/View;Landroid/view/View;I)V
11-06 12:17:12.719: I/dalvikvm(13622): Could not find method android.view.ViewGroup.onStopNestedScroll, referenced from method android.support.v7.internal.widget.ActionBarOverlayLayout.onStopNestedScroll
11-06 12:17:12.719: W/dalvikvm(13622): VFY: unable to resolve virtual method 11778: Landroid/view/ViewGroup;.onStopNestedScroll (Landroid/view/View;)V
11-06 12:17:12.719: D/dalvikvm(13622): VFY: replacing opcode 0x6f at 0x0000
11-06 12:17:12.719: D/dalvikvm(13622): VFY: dead code 0x0003-0025 in Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.onStopNestedScroll (Landroid/view/View;)V
11-06 12:17:12.719: I/dalvikvm(13622): Could not find method android.view.ViewGroup.onWindowSystemUiVisibilityChanged, referenced from method android.support.v7.internal.widget.ActionBarOverlayLayout.onWindowSystemUiVisibilityChanged
11-06 12:17:12.719: W/dalvikvm(13622): VFY: unable to resolve virtual method 11780: Landroid/view/ViewGroup;.onWindowSystemUiVisibilityChanged (I)V
11-06 12:17:12.719: D/dalvikvm(13622): VFY: replacing opcode 0x6f at 0x0008
11-06 12:17:12.719: I/dalvikvm(13622): Could not find method android.support.v7.internal.widget.ActionBarOverlayLayout.stopNestedScroll, referenced from method android.support.v7.internal.widget.ActionBarOverlayLayout.setHideOnContentScrollEnabled
11-06 12:17:12.739: W/dalvikvm(13622): VFY: unable to resolve virtual method 9308: Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.stopNestedScroll ()V
11-06 12:17:12.739: D/dalvikvm(13622): VFY: replacing opcode 0x6e at 0x000e
11-06 12:17:12.759: I/dalvikvm(13622): Could not find method android.widget.FrameLayout.jumpDrawablesToCurrentState, referenced from method android.support.v7.internal.widget.ActionBarContainer.jumpDrawablesToCurrentState
11-06 12:17:12.759: W/dalvikvm(13622): VFY: unable to resolve virtual method 12208: Landroid/widget/FrameLayout;.jumpDrawablesToCurrentState ()V
11-06 12:17:12.759: D/dalvikvm(13622): VFY: replacing opcode 0x6f at 0x0006
11-06 12:17:12.759: D/dalvikvm(13622): VFY: dead code 0x0009-0023 in Landroid/support/v7/internal/widget/ActionBarContainer;.jumpDrawablesToCurrentState ()V
11-06 12:17:12.789: W/dalvikvm(13622): VFY: unable to find class referenced in signature (Landroid/view/ActionMode;)
11-06 12:17:12.889: I/dalvikvm(13622): Could not find method android.view.ViewGroup.onRtlPropertiesChanged, referenced from method android.support.v7.widget.Toolbar.onRtlPropertiesChanged
11-06 12:17:12.889: W/dalvikvm(13622): VFY: unable to resolve virtual method 11775: Landroid/view/ViewGroup;.onRtlPropertiesChanged (I)V
11-06 12:17:12.889: D/dalvikvm(13622): VFY: replacing opcode 0x6f at 0x0007
11-06 12:17:12.919: I/dalvikvm(13622): Could not find method android.content.res.TypedArray.getChangingConfigurations, referenced from method android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations
11-06 12:17:12.919: W/dalvikvm(13622): VFY: unable to resolve virtual method 532: Landroid/content/res/TypedArray;.getChangingConfigurations ()I
11-06 12:17:12.919: D/dalvikvm(13622): VFY: replacing opcode 0x6e at 0x0002
11-06 12:17:12.919: D/dalvikvm(13622): VFY: dead code 0x0005-0006 in Landroid/support/v7/internal/widget/TintTypedArray;.getChangingConfigurations ()I
11-06 12:17:12.929: I/dalvikvm(13622): Could not find method android.content.res.TypedArray.getType, referenced from method android.support.v7.internal.widget.TintTypedArray.getType
11-06 12:17:12.929: W/dalvikvm(13622): VFY: unable to resolve virtual method 554: Landroid/content/res/TypedArray;.getType (I)I
11-06 12:17:12.929: D/dalvikvm(13622): VFY: replacing opcode 0x6e at 0x0002
11-06 12:17:12.929: D/dalvikvm(13622): VFY: dead code 0x0005-0006 in Landroid/support/v7/internal/widget/TintTypedArray;.getType (I)I
11-06 12:17:13.199: I/dalvikvm(13622): Could not find method android.view.accessibility.AccessibilityEvent.setSource, referenced from method android.support.v7.internal.widget.ActionBarContextView.onInitializeAccessibilityEvent
11-06 12:17:13.219: W/dalvikvm(13622): VFY: unable to resolve virtual method 11885: Landroid/view/accessibility/AccessibilityEvent;.setSource (Landroid/view/View;)V
11-06 12:17:13.219: D/dalvikvm(13622): VFY: replacing opcode 0x6e at 0x000e
11-06 12:17:13.229: I/dalvikvm(13622): Could not find method android.support.v7.internal.widget.AbsActionBarView.onInitializeAccessibilityEvent, referenced from method android.support.v7.internal.widget.ActionBarContextView.onInitializeAccessibilityEvent
11-06 12:17:13.229: W/dalvikvm(13622): VFY: unable to resolve virtual method 9006: Landroid/support/v7/internal/widget/AbsActionBarView;.onInitializeAccessibilityEvent (Landroid/view/accessibility/AccessibilityEvent;)V
11-06 12:17:13.229: D/dalvikvm(13622): VFY: replacing opcode 0x6f at 0x002d
11-06 12:17:13.229: D/dalvikvm(13622): VFY: dead code 0x0011-002b in Landroid/support/v7/internal/widget/ActionBarContextView;.onInitializeAccessibilityEvent (Landroid/view/accessibility/AccessibilityEvent;)V
11-06 12:17:13.229: D/dalvikvm(13622): VFY: dead code 0x0030-0030 in Landroid/support/v7/internal/widget/ActionBarContextView;.onInitializeAccessibilityEvent (Landroid/view/accessibility/AccessibilityEvent;)V
11-06 12:17:13.639: I/dalvikvm(13622): Could not find method android.view.ViewGroup.onInitializeAccessibilityEvent, referenced from method android.support.v7.widget.LinearLayoutCompat.onInitializeAccessibilityEvent
11-06 12:17:13.639: W/dalvikvm(13622): VFY: unable to resolve virtual method 11766: Landroid/view/ViewGroup;.onInitializeAccessibilityEvent (Landroid/view/accessibility/AccessibilityEvent;)V
11-06 12:17:13.639: D/dalvikvm(13622): VFY: replacing opcode 0x6f at 0x0006
11-06 12:17:13.639: D/dalvikvm(13622): VFY: dead code 0x0009-0011 in Landroid/support/v7/widget/LinearLayoutCompat;.onInitializeAccessibilityEvent (Landroid/view/accessibility/AccessibilityEvent;)V
11-06 12:17:13.639: W/dalvikvm(13622): VFY: unable to find class referenced in signature (Landroid/view/accessibility/AccessibilityNodeInfo;)
11-06 12:17:13.639: I/dalvikvm(13622): Could not find method android.view.ViewGroup.onInitializeAccessibilityNodeInfo, referenced from method android.support.v7.widget.LinearLayoutCompat.onInitializeAccessibilityNodeInfo
11-06 12:17:13.639: W/dalvikvm(13622): VFY: unable to resolve virtual method 11767: Landroid/view/ViewGroup;.onInitializeAccessibilityNodeInfo (Landroid/view/accessibility/AccessibilityNodeInfo;)V
11-06 12:17:13.639: D/dalvikvm(13622): VFY: replacing opcode 0x6f at 0x0006
11-06 12:17:13.639: D/dalvikvm(13622): VFY: dead code 0x0009-0011 in Landroid/support/v7/widget/LinearLayoutCompat;.onInitializeAccessibilityNodeInfo (Landroid/view/accessibility/AccessibilityNodeInfo;)V
11-06 12:17:13.639: W/KeyCharacterMap(13622): No keyboard for id -1
11-06 12:17:13.639: W/KeyCharacterMap(13622): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
11-06 12:17:22.499: W/KeyCharacterMap(13622): No keyboard for id 0
11-06 12:17:22.499: W/KeyCharacterMap(13622): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
11-06 12:17:23.469: D/dalvikvm(13622): GC_CONCURRENT freed 191K, 49% free 2900K/5639K, external 65K/512K, paused 12ms+6ms
11-06 12:17:23.629: W/KeyCharacterMap(13622): No keyboard for id 0
11-06 12:17:23.629: W/KeyCharacterMap(13622): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
11-06 12:17:26.799: W/dalvikvm(13622): Unable to resolve superclass of Lcom/google/android/gms/maps/MapFragment; (31)
11-06 12:17:26.799: W/dalvikvm(13622): Link of class 'Lcom/google/android/gms/maps/MapFragment;' failed
11-06 12:17:26.809: D/AndroidRuntime(13622): Shutting down VM
11-06 12:17:26.809: W/dalvikvm(13622): threadid=1: thread exiting with uncaught exception (group=0x40018560)
11-06 12:17:26.819: E/AndroidRuntime(13622): FATAL EXCEPTION: main
11-06 12:17:26.819: E/AndroidRuntime(13622): java.lang.IllegalStateException: Could not execute method of the activity
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.View$1.onClick(View.java:2165)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.View.performClick(View.java:2506)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.View$PerformClick.run(View.java:9112)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.os.Handler.handleCallback(Handler.java:587)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.os.Handler.dispatchMessage(Handler.java:92)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.os.Looper.loop(Looper.java:130)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.app.ActivityThread.main(ActivityThread.java:3835)
11-06 12:17:26.819: E/AndroidRuntime(13622): at java.lang.reflect.Method.invokeNative(Native Method)
11-06 12:17:26.819: E/AndroidRuntime(13622): at java.lang.reflect.Method.invoke(Method.java:507)
11-06 12:17:26.819: E/AndroidRuntime(13622): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864)
11-06 12:17:26.819: E/AndroidRuntime(13622): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622)
11-06 12:17:26.819: E/AndroidRuntime(13622): at dalvik.system.NativeStart.main(Native Method)
11-06 12:17:26.819: E/AndroidRuntime(13622): Caused by: java.lang.reflect.InvocationTargetException
11-06 12:17:26.819: E/AndroidRuntime(13622): at java.lang.reflect.Method.invokeNative(Native Method)
11-06 12:17:26.819: E/AndroidRuntime(13622): at java.lang.reflect.Method.invoke(Method.java:507)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.View$1.onClick(View.java:2160)
11-06 12:17:26.819: E/AndroidRuntime(13622): ... 11 more
11-06 12:17:26.819: E/AndroidRuntime(13622): Caused by: android.view.InflateException: Binary XML file line #18: Error inflating class fragment
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:581)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.LayoutInflater.rInflate(LayoutInflater.java:623)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.LayoutInflater.rInflate(LayoutInflater.java:626)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.LayoutInflater.inflate(LayoutInflater.java:408)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.support.v7.app.ActionBarActivityDelegateBase.setContentView(ActionBarActivityDelegateBase.java:228)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.support.v7.app.ActionBarActivity.setContentView(ActionBarActivity.java:102)
11-06 12:17:26.819: E/AndroidRuntime(13622): at com.example.spr.Login.Zaloguj(Login.java:31)
11-06 12:17:26.819: E/AndroidRuntime(13622): ... 14 more
11-06 12:17:26.819: E/AndroidRuntime(13622): Caused by: java.lang.ClassNotFoundException: android.view.fragment in loader dalvik.system.PathClassLoader[/data/app/com.example.spr-2.apk]
11-06 12:17:26.819: E/AndroidRuntime(13622): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
11-06 12:17:26.819: E/AndroidRuntime(13622): at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
11-06 12:17:26.819: E/AndroidRuntime(13622): at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.LayoutInflater.createView(LayoutInflater.java:471)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.LayoutInflater.onCreateView(LayoutInflater.java:549)
11-06 12:17:26.819: E/AndroidRuntime(13622): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:66)
11-06 12:17:26.819: E/AndroidRuntime(13622): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:568)
11-06 12:17:26.819: E/AndroidRuntime(13622): ... 22 more
Link do całej aplikacji: https://www.dropbox.com/s/1k6cyxyu3l8xdtl/SPR.rar?dl=0