自从我在Flutter项目中的一个屏幕上添加了AssetImage以来,该应用程序将在约5-10秒后崩溃。一旦执行flutter run
,我将得到以下输出:
√ Built build\app\outputs\apk\debug\app-debug.apk.
Flutter is taking longer than expected to report its views. Still trying...
W/le.climb_grade(31412): Accessing hidden method Landroid/view/accessibility/AccessibilityNodeInfo;->getSourceNodeId()J (greylist, reflection, allowed)
W/le.climb_grade(31412): Accessing hidden method Landroid/view/accessibility/AccessibilityRecord;->getSourceNodeId()J (greylist, reflection, allowed)
W/le.climb_grade(31412): Accessing hidden field Landroid/view/accessibility/AccessibilityNodeInfo;->mChildNodeIds:Landroid/util/LongArray; (greylist, reflection, allowed)
W/le.climb_grade(31412): Accessing hidden method Landroid/util/LongArray;->get(I)J (greylist, reflection, allowed)
W/Gralloc3(31412): mapper 3.x is not supported
W/RenderThread(31412): type=1400 audit(0.0:99213): avc: denied { read } for name="u:object_r:vendor_default_prop:s0" dev="tmpfs" ino=24913 scontext=u:r:untrusted_app_27:s0:c179,c257,c512,c768 tcontext=u:object_r:vendor_default_prop:s0 tclass=file permissive=0
E/libc (31412): Access denied finding property "vendor.gralloc.disable_ahardware_buffer"
这是 Assets 图像所在的文件。这是应用程序打开时的默认屏幕。
import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart';
class Start extends StatefulWidget {
@override
_StartState createState() => _StartState();
}
class _StartState extends State<Start> {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Container(
decoration: BoxDecoration(
image: DecorationImage(
image: AssetImage('lib/img/start_bg.jpg'),
fit: BoxFit.cover,
colorFilter: ColorFilter.mode(
Colors.black.withOpacity(0.3),
BlendMode.dstATop
),
)
),
constraints: BoxConstraints.expand(),
child: SafeArea(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Text(
'CLIMB GRADER',
style: GoogleFonts.titilliumWeb(
fontStyle: FontStyle.italic,
fontWeight: FontWeight.w600,
fontSize: 38.0
),
),
],
)
),
),
);
}
}
最佳答案
请不要将 Assets 图片放入lib
文件夹中
您可以从
AssetImage('lib/img/start_bg.jpg'),
到
assets/img
文件夹AssetImage('assets/img/start_bg.jpg'),
并像这样更新
pubsepc.yaml
assets:
- assets/img/
关于android - 插入AssetImage之后随机出现 “lost connection to device”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60626982/