0

尝试使用google maps v2作为this link建议的应用程序时,我介绍了获取密钥然后跟随procedure导入Google Play服务的过程。但当我在我的项目中导入库时,我发现R文件丢失。任何人都可以建议如何解决这个错误。在Android项目中导入Google-Play-Services会删除R文件

编辑

代码和它的日志猫。

public class Maptest extends FragmentActivity { 

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

XML文件:

<?xml version="1.0" encoding="utf-8"?> 
<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/map" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    class="com.google.android.gms.maps.MapFragment"/> 

,然后允许在清单文件中给出

<uses-permission android:name="android.permission.VIBRATE"/> 
<uses-permission android:name="android.permission.CAMERA"/> 
<uses-permission android:name="android.permission.WAKE_LOCK"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
<uses-permission android:name="android.permission.INTERNET"/> 
<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="com.google.android.providers.gsf.permission.READ_GSERVICES"/> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 

<permission 
     android:name="com.curioussolutions.autoistdiary.permission.MAPS_RECEIVE" 
     android:protectionLevel="signature"/> 
    <uses-permission android:name="com.curioussolutions.autoistdiary.permission.MAPS_RECEIVE"/> 

    <uses-feature 
     android:glEsVersion="0x00020000" 
     android:required="true"/> 

02-20 10:30:16.093: E/AndroidRuntime(21076): FATAL EXCEPTION: main 02-20 10:30:16.093: E/AndroidRuntime(21076): java.lang.NoClassDefFoundError: com.google.android.gms.R$styleable 02-20 10:30:16.093: E/AndroidRuntime(21076): at com.google.android.gms.maps.GoogleMapOptions.createFromAttributes(Unknown Source) 02-20 10:30:16.093: E/AndroidRuntime(21076): at com.google.android.gms.maps.SupportMapFragment.onInflate(Unknown Source) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:271) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.view.LayoutInflater.rInflate(LayoutInflater.java:623) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.view.LayoutInflater.inflate(LayoutInflater.java:408) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.view.LayoutInflater.inflate(LayoutInflater.java:320) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.view.LayoutInflater.inflate(LayoutInflater.java:276) 02-20 10:30:16.093: E/AndroidRuntime(21076): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:209) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.app.Activity.setContentView(Activity.java:1657) 02-20 10:30:16.093: E/AndroidRuntime(21076): at com.curioussolutions.autoistdiary.MainActivity.onCreate(MainActivity.java:25) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1615) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.os.Handler.dispatchMessage(Handler.java:99) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.os.Looper.loop(Looper.java:130) 02-20 10:30:16.093: E/AndroidRuntime(21076): at android.app.ActivityThread.main(ActivityThread.java:3687) 02-20 10:30:16.093: E/AndroidRuntime(21076): at java.lang.reflect.Method.invokeNative(Native Method) 02-20 10:30:16.093: E/AndroidRuntime(21076): at java.lang.reflect.Method.invoke(Method.java:507) 02-20 10:30:16.093: E/AndroidRuntime(21076): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842) 02-20 10:30:16.093: E/AndroidRuntime(21076): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600) 02-20 10:30:16.093: E/AndroidRuntime(21076): at dalvik.system.NativeStart.main(Native Method) 02-20 10:30:17.500: W/jdwp(21076): Debugger is telling the VM to exit with code=1 02-20 10:30:17.500: I/dalvikvm(21076): GC lifetime allocation: 2194 bytes

+0

它与您的清单文件有关,请尝试扫描您的清单中已损坏的标记和错误的属性。 – 2013-02-23 18:31:42

+0

@hardcoded我已经发布了我的清单文件snipet你可以检查它并让我知道如果我缺少一些东西 – sankettt 2013-02-26 05:40:03

+0

顺便说一句,你运行你的应用程序,并得到这个logcat堆栈跟踪?如果是这样,那么你的R班现在工作正常? – 2013-02-26 09:55:22

回答

0

重新启动项目,运行全新的重建项目。如果问题仍然存在,请尝试检查其他文件中是否存在其他错误。如果问题仍然存在,请尝试编辑并保存de AndroidManifest.xml。

+0

在清单文件中应该做些什么编辑@red_alert – sankettt 2013-02-19 13:03:25

+0

只需编辑一些行,保存并在此之后回滚即可。保存清单时,项目将重建。我建议,因为对我来说,我曾经有过这样的时代,我有你的错误。 – 2013-02-19 13:06:30

+0

可能你需要改变项目属性和项目必须使用google api目标。例如API 10 Google Inc. – 2013-02-19 13:25:32

0

问题可能是这一个。

com.google.android.gms.maps.SupportMapFragment.onInflate(Unknown Source) 02-20 10:30:16.093: E/AndroidRuntime(21076): 
at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:271) 

因为我认为你已经使用过。

<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/map" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    class="com.google.android.gms.maps.MapFragment"/> 

它应该是。

<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/map" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
class="com.google.android.gms.maps.SupportMapFragment"/> 

Google Play服务库使用SupportMapFragment而不是MapFragment。你也可以在他们的谷歌地图演示中看到他们使用了SupportMapFragment。

+0

ohk我会检查,让你知道.. – sankettt 2013-02-26 13:11:37

+0

不工作的家伙..请提供一个可行的解决方案..当我导入谷歌播放服务的lib。 R.java文件被删除.. – 2014-02-10 06:59:20

+0

@Mitesh你有这个问题吗?检查你的清单最有可能是你在清单中的标签上犯了一个错误。你有没有发布你的问题?如果你有你可以在这里回复,我会研究它。 – 2014-02-12 15:04:22