当前位置 : 主页 > 手机开发 > android >

Android支持库v4和Google Maps API中断了编译

来源:互联网 收集:自由互联 发布时间:2021-06-11
我正在尝试在针对v10 API的 Android项目中使用Google Maps API v2. 阅读开发指南据说,由于Fragments仅在android api 11中引入,我需要使用Android支持库来使用API​​. 所以我做了以下事情: – 将andr
我正在尝试在针对v10 API的 Android项目中使用Google Maps API v2.
阅读开发指南据说,由于Fragments仅在android api 11中引入,我需要使用Android支持库来使用API​​.

所以我做了以下事情:
– 将android支持库v4 jar包含到我的项目中
– 包含“google-play-services-lib”库项目并引用它
– 编写以下代码,取自开发指南:

package com.darco.darcoapp;

import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapFragment;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;

public class CardJourneyActivity extends FragmentActivity{
    private GoogleMap myGoogleMap;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_card_journey);

        FragmentManager fm = getSupportFragmentManager();
        Fragment fr = fm.findFragmentById(R.id.mapFragmentCardJourney);
        MapFragment mf = (MapFragment)fr; //this line causes the compilation error

    }

正如评论所指出的那样,问题出现在最后一行代码上.
当我添加Eclipse中出现以下错误时(不在该行上,而是在文件的顶部):

The type android.app.Fragment cannot be resolved. It is indirectly referenced from required .class files

和Eclipse拒绝编译项目.

我已经尝试了在项目设置中我能想到的所有可能的配置,但也许有些东西让我不知道……我做错了什么?我在网上发现了一些有类似问题但没有解决方案,或者至少没有他们提出的解决方案.

当您使用Android Support包的片段backport时,请使用SupportMapFragment,而不是MapFragment.
网友评论