小编lep*_*sch的帖子

Flutter中的设备ID:device_info_plus包请求androidId时返回null

我是一名新的 Flutter 开发人员,我即将开发一个需要使用设备 id 的 Flutter 应用程序,因此我决定使用该device_info_plus包来 get androidId,但是当我请求设备信息以获取androidId其中时,它会返回,null并且还会返回甚至不存在于toMap()对象中。我不知道到底发生了什么,但我浏览的所有文档都说这个包可以给我设备 ID。

这是函数

Future<Object?> getId() async {
    var deviceInfo = DeviceInfoPlugin();
    if (Platform.isIOS) { // import 'dart:io'
      var iosDeviceInfo = await deviceInfo.iosInfo;
      return iosDeviceInfo.identifierForVendor; // unique ID on iOS
    } else if(Platform.isAndroid) {
      var androidDeviceInfo = await deviceInfo.androidInfo;
      print(androidDeviceInfo.androidId);
      return androidDeviceInfo.androidId; // unique ID on Android
    }
    return false;
  }
Run Code Online (Sandbox Code Playgroud)

dart flutter deviceid

13
推荐指数
1
解决办法
1万
查看次数

flutter 中的 Google Play 完整性 api 问题

我正在将我的应用程序从 Google play safety net API 迁移到 Integrity API,但将其发布到 Playstore 后,该应用程序无法运行。只显示加载中。

我的项目使用 Flutter 框架运行。游戏控制台设置和设置已完成。但我对在 Flutter 中集成和设置播放完整性 API 没有任何想法。有人对这个有什么想法吗?

implementation "com.google.android.play:integrity:1.0.1"
Run Code Online (Sandbox Code Playgroud)

我已经添加到build.gradle文件的依赖项中。

flutter google-play-integrity-api

10
推荐指数
1
解决办法
1603
查看次数

Flutter 滚动在 iOS 15.4 上出现抖动,且促销为“120hz”

Flutter 应用程序滚动在 iOS 上15.4启动时会出现抖动,但从后台恢复后就会变得平滑。

这个问题仅出现在 iPhone 13 pro 和 13 pro max 上,我删除了有关重型组件和大图像的所有内容,并创建了一个新的空项目仅用于测试,但仍然得到相同的结果。

而flutter版本是Stable Chanel2.10.3

在 iPhone 13 pro max 上进行测试(促销)120hz

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: HomeScreen(), //MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class HomeScreen extends StatelessWidget{ …
Run Code Online (Sandbox Code Playgroud)

iphone scroll ios flutter

9
推荐指数
1
解决办法
3394
查看次数

如何创建可在 flutter 的完整项目中使用的共享首选项的单个实例

每当我们必须使用共享首选项时,我们都必须创建它的一个实例。

在 flutter 中,创建共享首选项的实例是异步的;

final prefs = await SharedPreferences.getInstance();

每当我们必须像上面那样使用它时,我们都必须始终创建它的实例。

有没有一种方法可以创建共享首选项的单个实例,该实例可供整个项目使用,而我们不必在 Flutter 中一次又一次地创建其实例?

android single-instance sharedpreferences dart flutter

8
推荐指数
1
解决办法
3518
查看次数

如何正确记录 React Native 组件的 Props 参数

我正在尝试为我正在开发的应用程序编写 JSDocs,但无论我如何记录组件函数,文档摘要显示该函数接受“any”类型的参数 Prop,并且不会显示正确的摘要道具应该包含哪些内容。

例如,在一个函数上,我将此作为我的文档:

/**
 * JSX Component for displaying selected images in a fullscreen Modal
 * @typedef {object} props
 * @prop {boolean} modalVis state variable boolean for controling modal visibility
 * @prop {callback} setModalVis callback to state function to set modalVis
 * @prop {string} imageUri string uri of the image to be displayed
 * @returns 
 */
const DisplayModal = (props) => {...}
Run Code Online (Sandbox Code Playgroud)

但是当我将函数悬停在代码中的其他位置时,它会给出以下文本:

const DisplayModal: (props: 任意) => JSX.Element

@typedef - 道具

@返回

截屏

是否有一种正确的方法来记录 Props 的预期内容,以便查看该函数将提供所需的信息?

jsdoc react-native

7
推荐指数
1
解决办法
3330
查看次数

更新到 v.1.69.2 后我的 MAC 上的 VS code 出现问题

在此输入图像描述我将 MAC 上的 VS 代码更新为 v.1.69.2,当我打开它时,我看不到活动栏上的图标,图标仍然隐藏,然后当鼠标悬停时,我也可以看到当我选择文件代码时,我可以如果不将鼠标放在上面,就看不到
任何让我的 IDE 正常工作的建议

在此输入图像描述

macos appearance visual-studio-code

7
推荐指数
1
解决办法
2921
查看次数

不要跨异步间隙使用 BuildContexts flutter

我已经创建了一个注册函数,但收到一条警告,Do not use BuildContexts across async gaps.提示Utils.flushBarErrorMessage("No Internet", context);我是 flutter 新手,想知道如何使用asyncawait

Future _registration() async {
    String name = _nameController.text.trim();
    String email = _emailController.text.trim();
    String password = _passwordController.text.trim();
    String phone = _phoneController.text.trim();

    if (name.isEmpty) {
      Utils.flushBarErrorMessage("Type your name", context);
    } else if (email.isEmpty) {
      Utils.flushBarErrorMessage("Type your email", context);
    } else if (!GetUtils.isEmail(email)) {
      Utils.flushBarErrorMessage("Type valid email address", context);
    } else if (password.isEmpty) {
      Utils.flushBarErrorMessage("Type your password", context);
    } else if (password.length < 6) …
Run Code Online (Sandbox Code Playgroud)

async-await dart flutter

6
推荐指数
1
解决办法
7648
查看次数

Flutter SVG 渐变未渲染:无法找到 url 的定义

我有这个渐变图像

\n

截屏

\n

但似乎flutter_svg无法渲染它。

\n

图片的代码是:

\n
<svg width="249" height="76" viewBox="0 0 249 76" fill="none" xmlns="http://www.w3.org/2000/svg">\n    <path d="M156.656 57.6692C153.048 57.6692 149.734 56.8297 146.714 55.1506C143.693 53.4715 141.26 51.1628 139.415 48.2244C137.653 45.202 136.772 41.8019 136.772 38.0239C136.772 34.162 137.653 30.8038 139.415 27.9494C141.26 25.011 143.693 22.7442 146.714 21.1491C149.734 19.47 153.048 18.6304 156.656 18.6304C160.347 18.6304 163.661 19.47 166.597 21.1491C169.618 22.7442 172.009 25.011 173.771 27.9494C175.533 30.8038 176.413 34.162 176.413 38.0239C176.413 41.8019 175.533 45.202 173.771 48.2244C172.009 51.1628 169.618 53.4715 166.597 55.1506C163.661 56.8297 160.347 57.6692 156.656 …
Run Code Online (Sandbox Code Playgroud)

svg dart flutter flutter-layout

6
推荐指数
1
解决办法
3743
查看次数

Spring Boot验证列表中的每个字符串(kotlin)

我在字符串引导中的验证方面遇到了困难。

我在 Kotlin 有以下课程:

class ListBlock(
    @field:Size(max = 5)
    val style: String,

    @field:Valid
    @field:Size(max = 10)
    val items: List<@Size(max = 50) String>
)
Run Code Online (Sandbox Code Playgroud)

@field:Size(max = 5)on style 通过尺寸 > 5 可以正常工作

@field:Size(max = 10)列表中包含超过 10 个字符串时,on items 可以正常工作

如果列表中的字符串之一的大小超过 50 个字符,我不会收到任何错误。

hibernate-validator kotlin spring-validator spring-boot spring-kotlin

5
推荐指数
1
解决办法
1590
查看次数

用于从导航器推送或弹出路由的上下文必须是导航器小部件的后代小部件的上下文

我正在尝试从第一个屏幕导航到另一个屏幕,所以基本上,我正在检查用户是否已登录,并根据该情况导航或不导航到下一个屏幕,但我收到以下错误尝试时的上下文

这是我的代码

Future _AuthenticateUser(BuildContext context){
  FirebaseAuth.instance
      .authStateChanges()
      .listen((event) {
      if(event == null){
      // User is null
     } else {

        // here I navigate to the next screen
        Navigator.push(context,
            MaterialPageRoute(builder: (context) => new MainScreen()));

    }
  });
}
Run Code Online (Sandbox Code Playgroud)

我首先调用代码来检查用户登录状态

 @override
  void didChangeDependencies() {
    _AuthenticateUser(context);
    super.didChangeDependencies();

  }
Run Code Online (Sandbox Code Playgroud)

这是我收到的错误

The context used to push or pop routes from the Navigator must be that of a widget that is a descendant of a Navigator widget.
Run Code Online (Sandbox Code Playgroud)

flutter

5
推荐指数
1
解决办法
1737
查看次数