Geofences(Android示例应用程序)java.lang.ClassNotFoundException MainActivity

我有一个华硕Eee Tab(Transformer Prime TF201 Android v4.1.1)。 我正在阅读关于Geofencing的API并将下面的示例应用程序下载到我的设备=> http://developer.android.com/training/location/geofencing.html 。 但是当我打开它时它会终止。

我在AndroidManifest.xml文件中设置了目标sdk = 16

logcat的

06-04 19:39:34.176: E/AndroidRuntime(2596): FATAL EXCEPTION: main 06-04 19:39:34.176: E/AndroidRuntime(2596): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.android.geofence/com.example.android.geofence.MainActivity}: java.lang.ClassNotFoundException: com.example.android.geofence.MainActivity 06-04 19:39:34.176: E/AndroidRuntime(2596): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1983) 06-04 19:39:34.176: E/AndroidRuntime(2596): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084) 06-04 19:39:34.176: E/AndroidRuntime(2596): at android.app.ActivityThread.access$600(ActivityThread.java:130) 06-04 19:39:34.176: E/AndroidRuntime(2596): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195) 06-04 19:39:34.176: E/AndroidRuntime(2596): at android.os.Handler.dispatchMessage(Handler.java:99) 06-04 19:39:34.176: E/AndroidRuntime(2596): at android.os.Looper.loop(Looper.java:137) 06-04 19:39:34.176: E/AndroidRuntime(2596): at android.app.ActivityThread.main(ActivityThread.java:4745) 06-04 19:39:34.176: E/AndroidRuntime(2596): at java.lang.reflect.Method.invokeNative(Native Method) 06-04 19:39:34.176: E/AndroidRuntime(2596): at java.lang.reflect.Method.invoke(Method.java:511) 06-04 19:39:34.176: E/AndroidRuntime(2596): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) 06-04 19:39:34.176: E/AndroidRuntime(2596): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 06-04 19:39:34.176: E/AndroidRuntime(2596): at dalvik.system.NativeStart.main(Native Method) 06-04 19:39:34.176: E/AndroidRuntime(2596): Caused by: java.lang.ClassNotFoundException: com.example.android.geofence.MainActivity 06-04 19:39:34.176: E/AndroidRuntime(2596): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 06-04 19:39:34.176: E/AndroidRuntime(2596): at java.lang.ClassLoader.loadClass(ClassLoader.java:501) 06-04 19:39:34.176: E/AndroidRuntime(2596): at java.lang.ClassLoader.loadClass(ClassLoader.java:461) 06-04 19:39:34.176: E/AndroidRuntime(2596): at android.app.Instrumentation.newActivity(Instrumentation.java:1053) 06-04 19:39:34.176: E/AndroidRuntime(2596): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974) 06-04 19:39:34.176: E/AndroidRuntime(2596): ... 11 more 

在此处输入图像描述

AndroidManifest.xml中

                    

@ stud91我从Url上面下载了Sample Project,而且我已经改变了一些基本的东西

  1. 创建“libs”文件夹
  2. 把android-support-v4.jar和google-play-services.jar放在Jar文件中

并运行示例项目它就像一个魅力。 你可以在“ adt-bundle-windows-x86 \ sdk \ extras \ google \ google_play_services \ libproject \ google-play-services_lib \ libs ”中findgoogle-play-services_lib。我认为你已经使用了Goolge包去除了这个包。 删除您为此项目创建的所有引用。 清理您的示例项目并享受。 我的示例项目的结构和输出

根据官方Android团队创建和监控Geofences你应该设置在Android模拟器上运行的Google Play Services SDK ,其中AVD运行基于Android 4.2.2或更高版本的Google API平台。

在geofences trianing链接说:

 Note: To make your app compatible with platform version 1.6 and later, the activity that displays the DialogFragment must subclass FragmentActivity instead of Activity. Using FragmentActivity also allows you to call getSupportFragmentManager() to display the DialogFragment. 

我在启动一个扩展MapActivityActivity遇到了同样的问题。 find答案需要一些时间和研究。 在application下的manifest.xml中添加uses-library为我解决了这个问题: