Articles of google maps android api 2

如何通过短信发送谷歌地图位置信息作为链接

在我正在构建的应用程序中, 我正在尝试将我的位置信息(Lat,Long / Geocoded)发送到我的紧急联系人列表。 我假设我的所有收件人都使用智能手机(Android / iOS) 到目前为止,应用程序通过SMS将我的位置信息作为字符串发送: “I am at: ” + Some Geocoded Location 但是,我认为这不是发送确切位置信息的最佳方式。 所以,我在想是否有可能通过Google Maps API生成地图 精确定位/点,并发送到该地图的链接。 可以在设备级别完成(不联系任何服务器) 或者,这可以通过制作我自己的地图网站来完成吗? 或者,这根本不可能吗? 我也很欣赏更好的方法和建议。 先谢谢你

缩放以适应地图上的所有标记谷歌地图v2

我想设置地图缩放级别以适合地图上的所有标记。 我使用了许多人所说的方法,但它对我不起作用。 它显示了一些其他观点。 if (positions.size() > 0) { final LatLngBounds.Builder builder = new LatLngBounds.Builder(); for (Marker m : positions) { builder.include(m.getPosition()); } builder.include(positions.get(i).getPosition()); } try { googleMap.setOnCameraChangeListener(new OnCameraChangeListener() { @Override public void onCameraChange(CameraPosition arg0) { googleMap.moveCamera(CameraUpdateFactory.newLatLngBounds( builder.build(), UserDataManager.getInstance().getWidth(), UserDataManager.getInstance().getWidth(),0)); googleMap.setOnCameraChangeListener(null); } }); } catch (IllegalStateException e) { // TODO: handle exception final View mapView = […]

Google Maps Android v2中的群集标记

我必须从Google Maps Android v2 API在GoogleMap上放置不同的标记。 问题是多个标记设置为相同的位置(lat / lng),因此用户只能看到“最新”标记。 是否有可能(在最好的情况下:库)从同一区域聚类不同的标记(与缩放级别相关)? 我已经阅读过有关MarkerClusterer的内容 ,但这是专为JavaScript API设计的。

google maps api v2内存不足错误

我的应用程序中存在巨大的内存问题。 我正在使用谷歌地图api v2与ClusterManager和自定义标记。 我通过调用markerOptions.icon(BitmapDescriptorFactory.fromBitmap(bitmap));提供图像markerOptions.icon(BitmapDescriptorFactory.fromBitmap(bitmap)); 对于每个标记,基于其类别。 问题是:在几次屏幕旋转后,我的应用程序因OOM错误而崩溃: 05-14 11:04:12.692 14020-30201/rokask.rideabike E/art﹕ Throwing OutOfMemoryError “Failed to allocate a 4194316 byte allocation with 1627608 free bytes and 1589KB until OOM” 05-14 11:04:12.722 14020-30201/rokask.rideabike E/AndroidRuntime﹕ FATAL EXCEPTION: GLThread 19179 Process: rokask.rideabike, PID: 14020 java.lang.OutOfMemoryError: Failed to allocate a 4194316 byte allocation with 1627608 free bytes and 1589KB until OOM […]

如何使用FusedLocationProviderClient获取GoogleMap中的当前位置

我想获得定期(比如说每2分钟)当前的位置更新,我正在关注官方文档,我编写了这段代码,但它没有每两分钟给出当前的位置更新,甚至在LocationRequest对象中指定我在requestLocationUpdates中传递( ),这里是代码: public class MapsActivity extends FragmentActivity implements OnMapReadyCallback, GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener{ private FusedLocationProviderClient FusedLocationClient; private GoogleApiClient mGoogleApiClient; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_maps); if (mGoogleApiClient == null) { mGoogleApiClient = new GoogleApiClient.Builder(this) .addConnectionCallbacks(this) .addOnConnectionFailedListener(this) .addApi(LocationServices.API) .build(); } SupportMapFragment map = getSupportFragmentManager().findFragmentById(R.id.map)); map.getMapAsync(this); FusedLocationClient LocationServices.getFusedLocationProviderClient(this); } @Override public void onConnected(Bundle bundle) { FusedLocationClient.getLastLocation() .addOnSuccessListener(this, […]

TileProvider方法getTile – 需要将x和y转换为lat / long

我正在将iOS应用移植到Android,并使用Google Maps Android API v2. 应用程序需要在地图上绘制热图叠加层。 到目前为止,看起来最好的选择是使用TileOverlay并实现自定义TileProvider 。 在方法getTile ,我的方法被赋予x,y和zoom,并且需要以Tile的forms返回位图。 到现在为止还挺好。 我有一组热图项目,我将用它们在位图​​上绘制径向渐变,每个都有一个纬度/经度。 我遇到以下两个任务有问题: 如何确定由x,y和zoom表示的图块是否包含热图项目的纬度/经度? 如何将热图项目的纬度/经度转换为位图的x / y坐标。 感谢您的帮助! UPDATE 感谢MaciejGórski的回答,以及marcin的实现,我能够回答我的问题的前半部分,但我仍然需要第二部分的帮助。 为了澄清,我需要一个函数来返回指定纬度/经度的图块的x / y坐标。 我试图扭转MaciejGórski的计算和marcin的答案而没有运气。 public static Point fromLatLng(LatLng latlng, int zoom){ int noTiles = (1 << zoom); double longitudeSpan = 360.0 / noTiles; double mercator = fromLatitude(latlng.latitude); int y = ((int)(mercator / 360 * noTiles)) […]

谷歌地图Android API v2 SupportMapFragment内存泄漏

使用2个简单的活动。 第一个Activity只包含一个按钮来启动第二个包含地图的Activity: 主要活动: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void goToMap(View view){ //This is just the onClick method for the button Intent intent=new Intent( this, BigMapTest.class); startActivity(intent); } 地图活动: public class BigMapTest extends FragmentActivity { SupportMapFragment mapFragment; GoogleMap map; @Override protected void onCreate(Bundle arg0) { […]

Google地图的夜间模式?

我的问题很简单。 谷歌地图有夜间模式吗? 到目前为止,我只能申请GoogleMap.MAP_TYPE_NORMAL | GoogleMap.MAP_TYPE_TERRAIN | GoogleMap.MAP_TYPE_SATELLITE但无法find夜间模式 。 我想要这样的东西 请不要建议我使用叠加 ,我已经尝试过了。 我无法使用它,因为我必须在上面放置标记。 碰到这篇文章,但它已经2岁了,我想应该有一些改进。

谷歌地图为我的位置自定义按钮

如何更改谷歌地图我的位置默认按钮? 我设置了我的位置启用和地图绘制标准图像来查找位置,是否可以更改默认图像?

如何在Google地图V2上将不规则多边形划分为相等的区域

我正在开发一个用于农业目的的Glebe取样申请。 在那个用户可以通过点击地图来选择一个Glebe,这将根据点击的数量创建一个多边形。 我能够创建该多边形并能够获得多边形的区域。 但是现在我需要把它分成相同的区域。 例如,如果多边形的面积是50平方公尺,那么它将被分成50个1平方公尺的区域。 Agri Precision App已经完成了相同的function。 find下面的图像。 我需要将多边形划分为与下面的图像相同并显示其中的点。 为了获得Area,我正在使用Google Map Utilty Lib它还有一个算法用于网格聚类。 我想要像上面的图像一样。 在上图中,它们按每5公顷的面积划分。 由于所有区域都是85公顷,因此应显示的总点数为17.这就是它的工作原理。 所以我的问题是: 如何根据Map上多边形的面积find这些点,以便我可以在Map上绘制这些点?