• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Apps Cannot Import com.google.android.gms.GoogleMap

ac4android

Well-Known Member
Nov 3, 2015
198
29
Hi.

I have re-factored my codes to use a fragment instead of an activity, but now I cannot import anything from com.google.android. There are no error messages, just android highlighted in red.

I am on Android Studio 1.5.1 (not Eclipse! ) and I've used its SDK-Manager to install everything related to Google from API17 upward (4.2.2)

Can someone point me in the right direction please?

This is my ShowMapFragment.java
Code:
import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.support.v4.app.FragmentActivity;

// cannot import any of the following after refactoring my codes,
// they were OK in the activity that I have replaced.
import com.google.android.gms.maps.MapView;
import com.google.android.gms.maps.CameraPosition;
import com.google.android.gms.maps.CameraUpdate;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;

public class ShowMapFragment extends Fragment implements OnMapReadyCallback {

    private GoogleMap gMap;
    MapView mapView;
    double SITE_LATITUDE = 34.092809;
    double SITE_LONGITUDE = -118.328661;
    // private final LatLng frLatLng = new LatLng(36.778261,-119.41793);
    @Override
    public View onCreateView(LayoutInflater inflater,
                ViewGroup container,
                Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_show_map,
                container,
                false);
// etc...

This is my simple fragment_show_map.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.google.android.gms.maps.MapView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/mapView"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />


This is my manifest.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.mytestproject.android101">


    <permission
        android:name="com.mytestproject.android101.permission.MAPS_RECEIVE"
        android:protectionLevel="signature" />
    <uses-permission android:name="com.mytestproject.android101.permission.MAPS_RECEIVE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSSERVICES" />
    <!-- The following 2 permissions are not required to use Google Maps Android API v2, but are recommended. -->
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <!--
         Because version 2 of the Google Maps Android API requires OpenGL ES version 2,
        you must add a <uses-feature> element as a child of the manifest element in AndroidManifest.xml
    -->
    <uses-feature
        android:glEsVersion="0x00020000"
        android:required="true" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <uses-library android:name="com.google.android.maps" />

        <meta-data
            android:name="com.google.android.maps.v2.API_KEY"
            android:value=" Google gave me an API " />


        <activity
            android:name=".TopLevelActivity"
            android:label="@string/app_name"
            android:theme="@style/AppTheme.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <activity
            android:name=".ListProjectsActivity"
            android:label="@string/title_activity_list_projects"
            android:theme="@style/AppTheme.NoActionBar" />

        <activity
            android:name=".ListDeliveriesActivity"
            android:label="@string/title_activity_list_deliveries"
            android:theme="@style/AppTheme.NoActionBar"></activity>
    </application>

</manifest>
 
Last edited:

BEST TECH IN 2023

We've been tracking upcoming products and ranking the best tech since 2007. Thanks for trusting our opinion: we get rewarded through affiliate links that earn us a commission and we invite you to learn more about us.

Smartphones