我编写了一个基本的地图应用程序,可以使用 AndroidStudio 轻松实例化。唯一的区别是片段加载到另一个自定义布局中。
package com.wayl.activities;
import android.os.Bundle;
import android.support.v4.app.FragmentManager;
import android.support.v7.app.AppCompatActivity;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
import com.wayl.R;
public class MapsActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
FragmentManager myFragmentManager = getSupportFragmentManager();
SupportMapFragment mapFragment = (SupportMapFragment) myFragmentManager.findFragmentById(R.id.map);
GoogleMap mMap = mapFragment.getMap();
// Add a marker in Sydney and move the camera
LatLng sydney = new LatLng(-35, 152);
mMap.addMarker(new MarkerOptions().position(sydney).title("Marker near Sidney"));
mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));
}
[...]
如上所述,该应用程序在 AVD 中完美运行,但无法使其在真实设备上运行。它仅显示一个空的地图占位符,并且还有彩色的谷歌标志。但没有标记,没有网格,没有按钮,什么也没有。
为什么我认为它应该有效:
网络、wifi 都可以,手机上和 AVD 上都可以
OpenGL版本应该不是问题 https://stackoverflow.com/questions/28974313/google-map-showing-on-emulator-but-not-on-device,我在 ap 上运行 apk
Galaxy Samsung S3 和 Galaxy Note 4。
我放置了使用 keytool 检索的调试版本和发布版本的指纹,并与我的密钥库连接,因此关键是没问题 https://stackoverflow.com/questions/11414988/google-maps-not-showing-on-phone-but-works-on-emulator,你还可以看到参考图像 https://i.stack.imgur.com/lrRyu.jpg,即使它说这是可选的。我放置了基础包和包含地图活动的包只是为了确定。
我等了足够的时间用于获取位置的应用程序 https://stackoverflow.com/questions/24479225/google-maps-application-works-on-emulator-but-not-real-device,并在需要时传播指纹。
Manifest 拥有检索粗略和精细位置的所有正确权限(请记住,在 AVD 中一切都运行良好)
我过去已经成功地在Android上开发了地图。我记得每次在令人沮丧的过程中经过四五次尝试和错误后我都能实现它。这次我不知道还能做什么了。我正在探索 S.O.了解我错在哪里。
我终于找到了解决方案。
在新的 AndroidStudio 示例中,带有密钥 (google_maps_api.xml) 已放入文件夹应用\src\调试\res\值,以及另一个在应用\src\发布\res\值!
虽然 AndroidStudio 向您显示所有布局、所有值文件等,但只有一个带有密钥的值文件,因此我没有注意到文件系统中实际上有两个文件,其中一个未设置密钥!我什至现在都不知道可能有不同的文件夹。
我为此苦苦挣扎了几天。每次我尝试创建简单的地图时,都会发生这种情况,某些内容会发生变化,弹出窗口,让我浪费时间。当你找到解决方案时,一切似乎都很明显,但与此同时,它确实令人沮丧。
谢谢大家帮忙!我真的很感激。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)