2

我想在我的颤振应用程序中使用 huawei_push 套件,但由于 PendingIntent 问题(安全规则),Google Play 商店拒绝了我的应用程序。我想为 Google Play Store 和 Huawei App Gallery 使用相同的源代码。我在想:

  1. 基于flavor构建APK(构建的APK中不会使用华为push kit依赖),
  2. 使用不同的pubspec.yaml文件,避免整个项目对华为推送包的依赖。

问题:

如何只为华为 App Gallery 使用 huawei_push 工具包,仍然为不同的商店使用相同的源代码?

4

1 回答 1

2

更新:</p>

该问题已报告给研发团队。并且预计将在下一个版本中修复。

同时,我们提供了一个变通的解决方案。下个版本发布之前可以参考这个。(Flutter插件是开源的,可以直接修改)

修改方法如下:

1.打开根目录下的pubspec.xml文件,找到插件。如下:

dependencies:
  flutter:
    sdk: flutter

  huawei_location: 5.0.0+301

你需要找到Flutter的缓存目录,例如:

在此处输入图像描述

找到插件目录,例如:

在此处输入图像描述

如果插件指向一个目录,例如:

dependencies:    
    huawei_location:
        path: {library path}

直接访问目录。

2.修改android目录下的build.gradle文件,修改该文件所依赖的SDK版本。

例如: implementation 'com.huawei.hms:location:5.1.0.303'

PS 该PendingIntent问题已在Push kit 5.3.0.304中解决。所以你可以直接使用这个版本。

修改后运行如下命令触发编译: flutter run

于 2021-08-05T03:13:03.640 回答