我的目标是按照here的说明将Google地图作为主要活动。
我粘贴了网站上的代码(下面的MainActivity.java代码)并导入了所有必需的包(alt + enter)。然而,仍然存在一些错误(现在,我专注于一个,可能会在不久的将来更多地询问其他错误)。
第if (googleMap == null) {
行有一条红线,上面写着3件事:
Unknown class googleMap
(此错误仅适用于此特定行)
Unexpected token
(当鼠标悬停在null
上方时)&
Unexpected token
(当鼠标悬停在if
上方时)
如果有帮助,我正在使用android studio。谢谢,代码如下 -
import android.content.Context;
import android.location.Location;
import android.location.LocationManager;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.widget.TextView;
import android.widget.Toast;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapFragment;
public class MainActivity extends AppCompatActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
}
public GoogleMap googleMap; // Might be null if Google Play services APK is not available.
if (googleMap == null) {
googleMap = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMapAsync(this);
// check if map is created successfully or not
if (googleMap == null) {
Toast.makeText(getApplicationContext(),
"Could not create Maps", Toast.LENGTH_SHORT).show();
}
else {
// Changing map type
//TODO
}
}
public GpsLocation(Context mContext, TextView gpsStatusTextView) {
this.mContext = mContext;
this.gpsStatusTextView = gpsStatusTextView;
getLocation();
}
public Location getLocation() {
try {
locationManager = (LocationManager) mContext
.getSystemService(Context.LOCATION_SERVICE);
// getting GPS status
isGPSEnabled = locationManager
.isProviderEnabled(LocationManager.GPS_PROVIDER);
// getting network status
isNetworkEnabled = locationManager
.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
if (!isGPSEnabled && !isNetworkEnabled) {
// no network provider is enabled
} else {
this.canGetLocation = true;
// First get location from Network Provider
if (isNetworkEnabled) {
locationManager.requestLocationUpdates(
LocationManager.NETWORK_PROVIDER,
MIN_TIME_BW_UPDATES,
MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
Log.d("Network", "Network");
if (locationManager != null) {
location = locationManager
.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
if (location != null) {
latitude = location.getLatitude();
longitude = location.getLongitude();
}
}
}
// if GPS Enabled get lat/long using GPS Services
if (isGPSEnabled) {
if (location == null) {
locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER,
MIN_TIME_BW_UPDATES,
MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
Log.d("GPS Enabled", "GPS Enabled");
if (locationManager != null) {
location = locationManager
.getLastKnownLocation(LocationManager.GPS_PROVIDER);
if (location != null) {
latitude = location.getLatitude();
longitude = location.getLongitude();
}
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
return location;
}
gpsLocation = new GpsLocation(this, gpsStatusTextView);
if (gpsLocation.canGetLocation()){
double longitude = gpsLocation.getLongitude();
double latitude = gpsLocation.getLatitude();
}
}
很抱歉,如果这是一个 n00b 总问题
答案 0 :(得分:0)
在gradle文件中添加Google地图相关性并同步您的项目
答案 1 :(得分:0)
有关深入信息:
请按照以下文档操作:Getting Started,Project Configuration,Get API Key。
本指南是将地图添加到Android应用的快速入门。 Android Studio是推荐的使用Google Maps Android API构建应用的开发环境。
- 下载Android Studio
- 安装Google Play服务SDK
- 创建Google地图项目
- 获取Google Maps API密钥
- 你好地图!看看代码
- 连接Android设备
- 构建并运行您的应用
醇>
在本文档中介绍了在Android应用中使用Google Maps Android API时开发项目中所需的所有配置。
将地图添加到Android应用程序的整个过程如下:
- 安装Android SDK。
- 安装并配置Google Play服务SDK,其中包含Google Maps Android API。 注意:如果您将Google Maps Android API与Google Maps API Premium Plan许可一起使用,则必须下载并配置Premium Plan SDK。
- 获取API密钥。为此,您需要在Google Developers Console中注册项目,找到应用的签名证书,并创建API密钥。
- 将所需的设置添加到您的应用程序的清单中。
要使用Google Maps Android API,您必须在Google Developers Console上注册您的应用项目,并获取可以添加到您的应用中的Google API密钥。 注意:有各种类型的API密钥。您需要 Android密钥而不是浏览器密钥。
您的API密钥基于应用程序的简短形式的数字证书。所有Android应用都使用您持有私钥的数字证书进行签名。 (有关数字证书的详细信息,请参阅Android指南以签署您的应用程序。)
按照以下步骤操作,您将获得主要活动中的地图。
希望这有帮助。