【问题标题】:The sample of Google Maps Android API v2 com.example.mapdemo can not find file "R.java"Google Maps Android API v2 com.example.mapdemo 示例找不到文件“R.java”
【发布时间】:2013-01-24 14:03:16
【问题描述】:

今天看了Google Maps Android API v2的文档,说android-sdk\extras\google\google_play_services\samples\maps的项目可以运行, 但是在我导入eclipse并正确设置android-support-v4.jar和google-play-services.jar的库后,FeatureView.java中的import com.example.mapdemo.R;(第24行)找不到文件R.java.

com.example.mapdemo中几乎所有的java文件都需要类“R”,例如文件BasicMapActivity.java在第41行“setContentView(R.layout.basic_demo);”和第71行mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap();”需要R 谁能告诉我如何找到“R”类?

R

.java can not create automatically because the file multimap_demo.xml have some errors in
<br><br>    &lt;fragment
<br>      android:id="@+id/map3"
<br>      android:layout_width="match_parent"
<br>      android:layout_height="match_parent"
<br>      android:layout_weight="0.5"
<br>      class="com.google.android.gms.maps.SupportMapFragment"
<br>      map:cameraTargetLat="48.85"
<br>      map:cameraTargetLng="2.35"
<br>      map:cameraZoom="8"/&gt;
<br><br>

eclipse 说“cameraTargetLat”、“cameraTargetLng”和“cameraZoom”无法识别。 错误信息:

Multiple annotations found at this line:
    - error: No resource identifier found for attribute 'cameraTargetLat' in package 'com.example.mapdemo'
    - error: No resource identifier found for attribute 'cameraTargetLng' in package 'com.example.mapdemo'
    - error: No resource identifier found for attribute 'cameraZoom' in package 'com.example.mapdemo'

I do not know why.

If I change the code like this:
<br><br>    &lt;fragment
<br>      android:id="@+id/map3"
<br>      android:layout_width="match_parent"
<br>      android:layout_height="match_parent"
<br>      android:layout_weight="0.5"
<br>      class="com.google.android.gms.maps.SupportMapFragment"/&gt;
<br><br>

错误消失了,但我不知道它是否可以运行。

【问题讨论】:

    标签: google-maps-android-api-2


    【解决方案1】:

    将 maps_attr.xml 文件从库项目复制到项目的 values 文件夹中。

    【讨论】:

    • 对我有用,但知道为什么这个文件无法通过依赖项识别吗?
    【解决方案2】:

    您还应该导入 google-play-services_lib 项目 (/extras/google/google_play_services/libproject/google-play-services_lib) - 在识别出 cameraTargetLat 和其他项目并生成 R.java 之后。

    【讨论】:

      【解决方案3】:

      您应该将/extras/google/google_play_services/libproject/google-play-services_lib 作为库导入到您的项目中。

      1. /extras/google/google_play_services/libproject/google-play-services_lib导入一个已有的android项目,但记得COPYING IT TO WORKSPACE(重要,可能它原来所在的路径出现错误)
      2. 查看项目属性->Android 设置并添加库“google-play-services
      3. 记得将 android-support-v4.jargoogle-play-services.jar 添加到您的外部 JAR 中

      【讨论】:

        【解决方案4】:

        1,将两个外部 jar 包含到项目中
        2、复制\extras\google\google_play_services\libproject\google-play-services_lib\res\values\maps_attrs.xml到项目值文件夹
        3,在我的测试中,将 google-play-services_lib 复制到工作区看起来没有必要。

        更新: java.lang.NoClassDefFoundError: com.google.android.gms.R$styleable in android

        【讨论】:

          【解决方案5】:

          我解决了这个问题,只需将以下元数据添加到 AndroidManifest.xml

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

          【讨论】:

            【解决方案6】:

            也许这个答案可以帮助某人。
            这是由于一个愚蠢的错误,即两个项目。 Sample project of MapGoogle play service 项目必须位于同一目录下,否则将无法正确引用

            您需要将两个项目的项目复制到工作场所,或者如果您不想复制,所以不要为这两个项目都这样做,这是故障。如果你做得正确,那么你会发现这个

            【讨论】:

              【解决方案7】:

              您必须在布局 xml 中包含 xmlns:map="http://schemas.android.com/apk/res-auto" 才能使用 map 元素。

              R文件是Eclipseautogenerate,你可以在gen目录下找到它。 永远不要编辑这个文件!在某些情况下,您会发现有多个 R 文件,例如当您向项目添加库时,例如 google-play-services_lib。你总是可以在这样的代码中引用这个文件......

              mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(com.your.package.R.id.map)).getMap();
              

              如果您想配置您的地图,可以通过XML AttributesProgrammatically 进行。

              【讨论】:

                猜你喜欢
                • 2012-11-23
                • 2013-05-11
                • 2013-03-24
                • 2023-04-02
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多