Ionic 本机 Google 地图 Android 无法正常工作

2024-04-06

我必须在我的项目中添加带有 Google 地图的视图。我跟着官方 ionic 本机 Google 地图文档 https://ionicframework.com/docs/native/google-maps/但它不起作用。

我将背景颜色粉红色分配给包含地图的 div(用于测试),在将地图添加到 div 之前,div 显示正确。但是,当将地图添加到 div 时,模式窗口的背景变为透明,并且 div 消失。但没有显示错误。

我尝试了不同的方法将地图附加到 div 上,但结果是相同的。

当我使用 Ionic 文档的代码时,我收到此错误消息“GoogleMaps [已弃用] 请使用 GoogleMaps.create()”。我尝试使用 GoogleMaps.create() 而不是构造函数的参数来避免此错误消息,但仍然无法正常工作。

我的离子含量:

<ion-content fullscreen overflow-scroll="true" class="container">

  <div #map id="map"></div>

</ion-content>

部分CSS:

#map {
        height: 90%;
        width: 100%;
        border-width: 5px;
        border-color: red;
        background: pink;
    }

这里我们得到了 ts 的片段:

import {
  GoogleMaps,
  GoogleMap,
  GoogleMapsEvent,
  GoogleMapOptions,
  CameraPosition,
  MarkerOptions,
  Marker
 } from '@ionic-native/google-maps';  

...

export class PerfilPage {
  @ViewChild(Content) content: Content;
  @ViewChild('map') mapElement: ElementRef;
  map: GoogleMap;

...

ionViewDidLoad() {
// I use this for changing the nab-bar color
    this.content.ionScroll.subscribe((scroll) => {
      // console.log('user scrolled', scroll);
      if ( scroll.scrollTop > 100 ) {
        this.toolbar_color = "bg_search"
      } else {
        this.toolbar_color = "transparent"
      }
      this.ref.detectChanges();
    });

    // this.loadMap();
    // this.initMap();
    // this.testMap();
    this.offiMap();
  }

// Official Ionic documentation code
 offiMap() {
    let mapOptions: GoogleMapOptions = {
      camera: {
        target: {
          lat: 43.0741904,
          lng: -89.3809802
        },
        zoom: 18,
        tilt: 30
      }
    };

    this.map = this.googleMaps.create('map', mapOptions);

    // Wait the MAP_READY before using any methods.
    this.map.one(GoogleMapsEvent.MAP_READY)
      .then(() => {
        console.log('Map is ready!');

        // Now you can use all methods safely.
        this.map.addMarker({
            title: 'Ionic',
            icon: 'blue',
            animation: 'DROP',
            position: {
              lat: 43.0741904,
              lng: -89.3809802
            }
          })
          .then(marker => {
            marker.on(GoogleMapsEvent.MARKER_CLICK)
              .subscribe(() => {
                alert('clicked');
              });
          });

      });
  }
}

PS:API 密钥适用于其他项目(不适用于 Ionic 项目),所以我不知道问题出在哪里。

谢谢 :)


正如我在 git 存储库中所描述的,地图插件将本机地图视图放置在浏览器下方(或后面)。

https://github.com/mapsplugin/cordova-plugin-googlemaps#how-does-this-plugin-work https://github.com/mapsplugin/cordova-plugin-googlemaps#how-does-this-plugin-work

这就是为什么地图 div 的所有父元素都变得透明的原因。

如果需要设置应用程序的背景,则需要使用Environment.setBackground("pink").

由于地图是在浏览器下显示的,所以这个插件CAN NOT显示在对话框上。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ionic 本机 Google 地图 Android 无法正常工作 的相关文章

随机推荐

  • 我可以在 SQL Server 中选择 0 列吗?

    我希望这个问题比类似的问题好一点创建一个没有列的表 https stackoverflow com questions 2438321 create a table without columns 是的 我问的是一些最让人觉得毫无意义的学术
  • 表不必要的冗余

    我的物品列出如下 当然这只是一个总结 但我正在使用 详细信息 表中显示的方法来表示一种 继承 类型 可以这么说 因为 项目 和 可下载 将是相同的 除了每个都有一些相关的附加字段只对他们而言 我的问题是在这个设计模式中 这种事情在我们的项目
  • 当前不会命中断点。该文档尚未加载任何符号

    我用谷歌搜索了这个特定问题 但似乎找不到可行的解决方案 症状 在 Web 应用程序项目中的 aspx 页面的代码隐藏中添加断点后 该断点在页边空白处显示为一个空心的红色圆圈 圆圈右下角有一个用黄色三角形括起来的感叹号 将鼠标悬停在断点上时
  • 使用自定义对象的 JTable、JComboBox

    您好 如果您将 JComboBox 放入 JTable 中并将 String 数组放入 JComboBox 中 则一切正常 如果您将自己的数据类型放入 JComboBox 则在同一列中选择值会变得很复杂 这是官方示例 http docs o
  • 在单调递增然后递减的序列 cera 中查找一个数

    查找单调增加然后单调减少的序列中的最大值或最小值可以在 O log n 内完成 但是 如果我想检查一个数字是否存在于这样的序列中 这也可以在 O log n 中完成吗 我认为这是不可能的 考虑这个例子 1 4 5 6 7 10 8 3 2
  • 如何创建元组数组?

    我知道要在 C 中创建元组 我们使用以下格式 Tuple
  • Azure SQL 数据库 Bacpac 本地还原

    我使用 Azure 管理控制台中的 导出 选项创建了 Azure SQL 数据库的 BACPAC 备份 将其下载到我的计算机后 我对如何将其恢复到本地 SQL Server 实例有点困惑 我遇到了 DacImportExportCli 工具
  • 在 Visual Studio 中使用 FFmpeg

    我正在尝试在 Visual Studio 2010 的 C 项目中使用 FFmpeg 我想将这些库作为静态链接文件包含在内 简单的程序如libavcodec api example c http cekirdek pardus org tr
  • 寻找Excel自定义函数工具提示

    这个问题已经被asked https stackoverflow com questions 4262421 how to put a tooltip on a user defined function before https stac
  • 关于映射和迭代器的理论澄清

    如果我有一个带有地图作为私有成员的类 例如 class MyClass public MyClass std map
  • 添加样式以回显[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想为这个 php echo 添加一
  • 如何从 javascript 数组推送 JSON 中的元素

    我想将 javascript 数组值添加到 JSON 值对象中 其他元素也替换了我的元素 如收件人 主题 消息 我得到的 Json 如下 下面是我的代码 var BODY recipients values subject title bo
  • 在 MySQL 中获取下个月的第一个和最后一个日期

    如何在 where 子句中使用下个月的第一天和最后一天 Use SELECT DATE SUB LAST DAY DATE ADD NOW INTERVAL 1 MONTH INTERVAL DAY LAST DAY DATE ADD NO
  • FileOutputstream.close() 并不总是将字节写入文件系统?

    看完之后这个答案 https stackoverflow com questions 7849528 fileoutputstream close is really slow when writing large file 7849941
  • 设置 WebRequest 的正文数据

    我正在 ASP NET 中创建一个 Web 请求 我需要向正文添加一堆数据 我怎么做 var request HttpWebRequest Create targetURL request Method PUT response HttpW
  • GitHub 的 GPG 公钥是什么?

    如果您通过 GitHub 网站进行编辑 或合并拉取请求 则生成的提交将自动使用 GitHub 的 GPG 密钥进行签名 它看起来像这样 我希望拥有完整的公钥 以便我可以将其添加为我的系统上的可信密钥 GitHub 的 GPG 公钥是什么 G
  • 在 Windows 记事本的 Python 中创建 UTF-16 换行符

    在 Ubuntu 中运行的 Python 2 7 中 这段代码 f open testfile txt w f write Line one encode utf 16 f write u r n encode utf 16 f write
  • HTML LocalStorage 中的数据在其他窗口/选项卡中可用所需的时间

    我有一个使用 HTML LocalStorage 的网页 同时打开此页面的多个选项卡 窗口是很常见的 由于这些都使用相同的 LocalStorage 并且 LocalStorage 不提供事务或类似功能 因此我想实现某种形式的互斥 以防止不
  • 我如何将变量传递给谷歌云函数

    我目前正在创建一个云任务 它将定期将新数据导入到 automl 数据集中 目标是 GCP 云函数 http 目标 因为我不想在云函数中对数据集 ID 进行硬编码 我希望它接受来自 Web UI 的数据集 ID 因此我用这种方式输入flask
  • Ionic 本机 Google 地图 Android 无法正常工作

    我必须在我的项目中添加带有 Google 地图的视图 我跟着官方 ionic 本机 Google 地图文档 https ionicframework com docs native google maps 但它不起作用 我将背景颜色粉红色分