我正在使用Google Maps for Android v2.我想显示当前用户位置并放大它.这是以下代码FragmentActivity:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.map_activity);
mMap = ((SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.mapFragment_mapActivity)).getMap();
if (mMap == null) {
Toast.makeText(this, R.string.mapCreationProblem, Toast.LENGTH_LONG)
.show();
finish();
return;
}
mMap.setMyLocationEnabled(true);
Location currentLocation = mMap.getMyLocation();
if(currentLocation!=null){
LatLng currentCoordinates = new LatLng(
currentLocation.getLatitude(),
currentLocation.getLongitude());
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(currentCoordinates, 10));
}
}
Run Code Online (Sandbox Code Playgroud)
地图工作正常,当前位置的蓝点也可以工作.但似乎currentLocation总是空的.所以我无法放大当前位置.
谁知道为什么,拜托?
我在我的项目上工作并且工作得很好,但突然给我一个错误:
这是我的傻瓜:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "24.0.1"
int minSdk = hasProperty('devMinSdk') ? devMinSdk.toInteger() : 16
defaultConfig {
minSdkVersion minSdk
applicationId "com.ir.zanis.marketing_manager"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
vectorDrawables.useSupportLibrary = true
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.google.android.gms:play-services-maps:9.2.1'
compile 'com.google.android.gms:play-services-places:9.2.1'
compile 'com.android.support:recyclerview-v7:23.+'
compile 'com.android.support:cardview-v7:23.+'
compile 'com.google.maps.android:android-maps-utils:0.4+'
compile …Run Code Online (Sandbox Code Playgroud) 我正在实现一个地图导航应用程序。我每 1000 毫秒获取一次设备的当前位置并绘制一条折线,从当前位置到固定标记点。但是当在车内使用设备时,折线和当前位置更新不像优步或谷歌地图那样具有动画效果。它从一个点突然变成另一个点。
如何获得当前位置变化的平滑动画。
我有一个 Google 地图活动,我希望一旦地图打开/蓝点出现,相机就居中并放大用户,这样用户就不必按“中心按钮”,而我不这样做不必对地图相机的位置进行硬编码。
我发现了很多 5-6 年前的代码示例,所以它们都不再工作了。
是否还可以获得当前用户位置(纬度和经度)?
我正在 android 中使用 map static api 开发一个应用程序
这是业务逻辑,使用此位置从谷歌静态 api 获取用户位置请求并在此位置周围画一个圆圈
这是我正在使用的代码
https://maps.googleapis.com/maps/api/staticmap?center=29.31166,47.481766&zoom=7&size=600x300&maptype=roadmap&key=My Key
Run Code Online (Sandbox Code Playgroud)
现在的问题是如何在它周围画一个圆圈,我搜索并发现它是使用路径完成的,但无法理解如何获得该路径
我正在尝试在Google Maps V2 API中获取地图中心的纬度和经度,并获取地图的宽度和长度.
这是我的旧代码(来自我开始修改的GMaps v1):
import com.google.android.gms.maps.GoogleMap;
private GoogleMap mGoogleMapView;
public LatLng getMapCenter()
{
if( mGoogleMapView != null )
{
return mGoogleMapView.getMapCenter();
}
/*if( mOpenStreetMapView != null )
{
return convertOSMGeoPoint( mOpenStreetMapView.getMapCenter() );
}*/
return null;
}
public int getHeight()
{
if( mGoogleMapView != null )
{
return mGoogleMapView.getHeight();
}
/*if( mOpenStreetMapView != null )
{
return mOpenStreetMapView.getHeight();
}*/
return 0;
}
public int getWidth()
{
if( mGoogleMapView != null )
{
return mGoogleMapView.getWidth();
}
/*else if( mOpenStreetMapView != …Run Code Online (Sandbox Code Playgroud) java android google-maps-api-2 google-maps-android-api-2 android-maps-v2
如何使用mapview类创建android map v2,如何开发它,我使用MapFragment和SupportedMapFragment开发但我需要使用MapView类来创建gooogle地图.
请帮我...
我正在尝试调用方法requestLocationUpdates,但最终我收到一条错误消息"无法解析方法".我认为这是因为"这个"论点,但我不确定.我导入了LocationListener,但它没有帮助我.
这是我的代码部分:
import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GooglePlayServicesUtil;
import com.google.android.gms.location.LocationListener;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapFragment;
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 MainMap extends ActionBarActivity implements LocationListener {
private void addMarker(){
int status = GooglePlayServicesUtil.isGooglePlayServicesAvailable(getBaseContext());
if(status!= ConnectionResult.SUCCESS){ // Google Play Services are not available
int requestCode = 10;
Dialog dialog = GooglePlayServicesUtil.getErrorDialog(status, this, requestCode);
dialog.show();
}else { // Google Play Services are available
googleMap.setMyLocationEnabled(true);
LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
Criteria criteria = new Criteria();
String provider = locationManager.getBestProvider(criteria, true);
Location …Run Code Online (Sandbox Code Playgroud) 我对创建一个按钮感兴趣,该按钮将立即启动Google Maps应用并开始将导航驱动到特定地址。这可能吗?如果是这样,API是什么?
我希望它立即开始导航,而不会强迫用户在不同的路线选项之间进行选择。
android google-maps google-maps-api-3 google-maps-android-api-2 android-maps-v2
如何从谷歌地图方向 API 获取总行驶距离和路线,以显示用户的行驶路径(如 Uber)。
我正在关注本教程:http: //www.tutos-android.com/introduction-a-google-map-v2
以下是源代码:http: //www.tutos-android.com/wp-content/uploads/2013/03/GmapV2.zip
我得到这个错误:
02-18 18:51:05.699: E/Trace(774): error opening trace file: No such file or directory (2)
02-18 18:51:06.818: E/AndroidRuntime(774): FATAL EXCEPTION: main
02-18 18:51:06.818: E/AndroidRuntime(774): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.tutos.android.gmapv2/com.tutos.android.gmapv2.MyMapActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class fragment
02-18 18:51:06.818: E/AndroidRuntime(774): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
02-18 18:51:06.818: E/AndroidRuntime(774): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
02-18 18:51:06.818: E/AndroidRuntime(774): at android.app.ActivityThread.access$600(ActivityThread.java:130)
02-18 18:51:06.818: E/AndroidRuntime(774): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
02-18 18:51:06.818: E/AndroidRuntime(774): at android.os.Handler.dispatchMessage(Handler.java:99)
02-18 18:51:06.818: E/AndroidRuntime(774): at android.os.Looper.loop(Looper.java:137)
02-18 18:51:06.818: E/AndroidRuntime(774): …Run Code Online (Sandbox Code Playgroud)