gpt4 book ai didi

android - 华为手机上没有谷歌服务会 react 本地工作吗?

转载 作者:行者123 更新时间:2023-12-02 12:01:19 26 4
gpt4 key购买 nike

很快,新款华为手机将停止支持 Google Play 和 Google 移动服务。

华为正在准备自己的生态系统,名为HMS https://developer.huawei.com/consumer/en/service/hms/developer.html

他们的应用程序商店称为“华为应用程序库”,其文档位于:https://developer.huawei.com/consumer/en/doc/30202

他们现在正在向开发者(包括我)发送消息,鼓​​励他们向他们的商店发布应用程序。他们声称他们只需要一个 APK 文件,不需要对应用程序进行任何更改。

我的问题是:

  • react-native 应用是否可以在不更改代码的情况下运行?
  • Firebase SDK 可以使用吗?
  • 在另一个 Android 生态系统中维护应用的真正隐性成本是多少?

最佳答案

华为已经发布了华为移动服务,目前正在逐步更新其服务,以紧密配合谷歌和苹果。至于你问的问题

  1. react-native 应用是否可以在不更改代码的情况下运行?

可以,只要您可以生成 apk 上传到他们的华为应用程序库即可。您不必更改任何代码。

  • Firebase SDK 可以使用吗?
  • 这取决于您尝试纳入应用程序的服务类型,例如,如果您尝试使用 Firebase 提供的身份验证模块来使用 Google 登录,则仅在不包含 GMS 的手机上不受支持( Google 移动服务),即华为 Mate 30 Pro。

    但是,如果您正在查看通知。谷歌有 Firebase Cloud Messaging,华为有华为推送通知。您可以使用其中任何一种,因为这取决于后端服务的架构,并且所有 Android 设备都支持。

  • 在另一个 Android 生态系统中维护应用的真正隐性成本是多少?
  • 这完全取决于您如何构建系统以及应用程序中所需的服务。假设您想要将华为登录纳入您的应用程序中,并且您还需要包括HMS,但是您想要在华为应用程序库中维护这些内容,对于Google,您已经实现了FCM和Google登录和 map ,那么您将拥有维护两个共享共同核心功能的不同分支非常耗时且成本高昂。

    如果应用程序仅使用纯粹依赖于逻辑的裸露功能,并且很少或根本没有 GMS/HMS,那么您不必为您的项目维护单独的分支,只需一个就足够了。您只需将版本提交到 Google Play Publish 和华为应用程序库即可。

    如果您想对 GMS 和 HMS 使用单个存储库,则必须检查可用于启用该功能的服务。

    对于 GMS

    val gmsAvailable = GooglePlayServicesUtil.getInstance().isGooglePlayServicesAvailable(mContext)

    对于 HMS

    val hmsAvailable = HuaweiApiAvailability.getInstance().isHuaweiMobileServicesAvailable(mContext)

    因此,当尝试使用 Google 登录或华为登录或任何其他服务时,会是这样。

    if gmsAvailable {
    // execute GMS Code
    } else if hmsAvailable {
    // execute HMS Code
    }

    注意*以上代码是 Kotlin 语言

    关于android - 华为手机上没有谷歌服务会 react 本地工作吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58631362/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com