写点什么

Dart 开发技巧

作者:Geek_0a3437
  • 2022 年 6 月 30 日
  • 本文字数:1398 字

    阅读完需:约 5 分钟

大家好,我是小潘同学,这是我的第一篇文章,非常抱歉我的写作能力不好。

在这篇文章中,我想分享我在没有包的情况下将货币格式添加到字符串的经验,以及使用 Flutter 在 Android 12 上验证 Android 应用链接

Dart 中字符串货币格式的简单扩展


void main() {  print("1000".currency());  print("1300000".currency());  print("1005000".currency(symbol: '£'));  print("1000000".currency(symbol: '€'));}extension StringFormatter on String{  String currency({String symbol = "\$"}) {      int step = 1;    String val = this;        for (var i = val.length-1; i >=0; i--) {      if (i - 2*step > 0) {                val = val.replaceRange(i-2*step, i-2*step, ",");        step++;      }    }        return "$symbol$val";  }}
复制代码



使用 Flutter 在 Android 12 上验证 Android 应用链接

如果您在您的应用程序中设置了应用程序链接/通用链接,您可能已经注意到这并不总是适用于某些用户。有时这是因为默认情况下,设备不允许应用程序从浏览器或电子邮件打开 URL。

随着 Android 12 的发布,Google 添加了一个名为DomainVerificationManager的新 API 。此 API 可帮助您检查您的应用是否与一个或多个 URL 相关联。

我找到了一个插件,可以帮助您通过 Flutter 访问其中一些新的 API 功能。

您可以在这里找到domain_verification_manager插件

它是如何工作的?

此插件仅适用于 API 级别 31 或更高级别的 Android。但是,可以安全地将包添加到跨平台应用程序中。您可以进行 isSupported 检查以验证是否可以使用当前平台/版本组合。

要验证您是否可以使用 API,请使用 isSupported


await DomainVerificationManager.isSupported;
复制代码

您可以访问 3 个状态:

  • 已验证:已通过 Android 应用链接验证的域

  • 已选中:未通过验证,但用户手动关联应用的域。

  • 无:任何其他域

域是您在 AndroidManifest 中定义的域。

这些中的每一个都将返回适合该状态的域列表。

await DomainVerificationManager.domainStageVerified;await DomainVerificationManager.domainStageSelected;await DomainVerificationManager.domainStageNone;
复制代码

如果您看到该域不存在,则可能意味着验证过程中出现问题。要检查出了什么问题,您可以使用此处解释的命令行工具。

使用这些,您可以提示用户选择您的应用程序来打开域。

改变状态

到目前为止,还没有直接的方法来改变状态。这是用户必须做的事情。

该插件提供了一种简单的方法来直接打开应用程序的“默认打开”设置。

await DomainVerificationManager.domainRequest();
复制代码

希望这个插件能帮到你!

结论

dart 中的扩展是一项功能,可帮助您将函数添加到您不编写的其他类。在这里我为 String 类编写扩展

好吧,让我们来解释一下代码:

我们有从字符串的结尾到开头的 for 循环,因为货币的拆分器从写入价格开始

我们需要每 3 个字符添加一个字符,例如:“,”我使用 replaceRange 方法在特殊索引中插入字符。

如何找到正确的索引来插入字符? 我被认为是一个初始值为 1 的步骤的变量。好吧,我们需要检查我们之前返回的 3 个字符是否大于 0,如果为真,我们可以在每个 3 个字符中插入符号。如果我们想要例如 4 char 它只需要用 3 替换 2 就好了。

然后我还介绍了使用 Flutter 在 Android 12 上验证 Android 应用链接的方法,不知道符合你的口味不。

好的,今天就到这儿了!

发布于: 2022 年 06 月 30 日阅读数: 19
用户头像

Geek_0a3437

关注

还未添加个人签名 2022.06.29 加入

还未添加个人简介

评论

发布
暂无评论
Dart 开发技巧_flutter_Geek_0a3437_InfoQ写作社区