- 博客(768)
- 资源 (39)
- 收藏
- 关注

原创 【CoderSay】Code For Better 谷歌开发者之声 - 相遇2022GoogleSummit
【CoderSay】Code For Better 谷歌开发者之声 - 相遇2022GoogleSummit
2022-09-20 11:36:14
1303

原创 【Android,Kotlin,TFLite】移动设备集成深度学习轻模型TFlite(物体检测篇)
移动设备集成深度学习轻模型TFlite(物体检测篇)
2022-06-30 13:53:06
1239

原创 【Android,Kotlin,TFLite】移动设备集成深度学习轻模型TFlite(图像分类篇)
tensorflowlite的集成分类图片对返回数据的处理示例, 可以pull代码参考demoList{Recognition}关于这里的框架代码, 可以参考我另一个开源框架库: SwiftKit ,不过因为还未完成, 没有完整的wiki, 过段时间推出综上所述: 集成是不是很简单, 那赶快试试吧......
2022-06-29 17:35:19
1205
原创 【Android】androidx.datastore.core.CorruptionException: Unable to parse preferences proto.
虽然没有直接使用Proto DataStore,但Preferences DataStore实际上在后台使用Protocol buffer进行序列化,这解释了为什么会出现protobuf相关的错误。你可以为每个DataStore创建一个单独的DataStoreManager实例,并重用安全的读/写方法。该问题可能是由于首选项文件中的数据损坏而发生的,这可能是由于写入操作期间进程终止、设备存储问题、系统升级或低内存条件而发生的。使用DataStore的第三方库也可能导致这个问题。
2025-02-14 13:46:23
232
原创 【Android】WebView报ERR_UNKNOWN_URL_SCHEME错误
返回值为boolean型,是true的时候控制去WebView打开,为false调用系统浏览器或第三方浏览器。因为webview只能识别http, https这样的协议,像一些微信(weixin://)、去哪儿(qunaraphone://),他们自定义的协议webView是无法识别的,因此就会出现:ERR_UNKNOWN_URL_SCHEME这样的错误。所以,我们可能在有的博文中看到不去重写该方法也可以解决ERR_UNKNOWN_URL_SCHEME这个错误。
2025-02-06 16:13:13
335
原创 【Android】如何给TextView文本头部嵌入图片
这段代码的效果是在 TextView 中显示一个图标(R.drawable.icon32),后面跟着文本 “abc”。图标会替换掉 SpannableString 中的第一个空格字符,因此最终显示的内容是一个图标加上 " abc"
2025-02-06 09:52:11
173
原创 【Android自定义View】如何给TextView添加下划线,中划线
【代码】【Android自定义View】如何给TextView添加下划线,中划线。
2025-01-03 10:41:52
284
原创 【Android】EpoxyModels 报 an annotation argument must be a compile-time constant
Android 应用程序的功能模块内部使用 EpoxyModel 时,无法编译。......上面的代码抱怨 layout = R.layout.layout_foo line 造成 “an annotation argument must be a compile-time constant”。那么如何解?
2025-01-03 10:24:56
202
原创 【Kotlin】This type parameter violates the Finite Bound Restrictio
如何解决 Kotlin 中违反 Finite Bound Restriction 的问题?假设我在 Java 中有这个声明但是,这在 Kotlin 中是不行的,因为 Kotlin 对 “cyclic” 类型参数有限制。在 Kotlin 中有什么方法可以解决这个问题,以便我可以拥有相互依赖的泛型类型?
2025-01-02 10:25:14
253
原创 【Android】Agconnect - API ‘android.registerTransform‘ is removed
迁移到 gradle 8.x 后,我无法构建应用程序,因为最新的华为 AppGallery 依赖项仍然不兼容 gradle 8。那么除了恢复到 gradle 7 之外还有其他解决方案吗?
2025-01-02 10:09:50
482
原创 【Android】如何在BroadcastReceiver上运行协程函数
然后在您的接收器中,您可以像下面这样使用它。块中的代码是一个协程。请记住,您不应在此协程中使用,它必须在 10 秒内完成。
2025-01-02 10:04:50
142
原创 【Android】CameraX 三个拍照模式的区别
CAPTURE_MODE_MINIMIZE_LATENCY(最小化延迟模式):主要目标是减少从相机捕捉图像到显示画面之间的延迟。适用于实时视频传输、游戏或需要即时反应的场景。这种模式可能会牺牲一些图像质量,尤其是在低光条件下或高分辨率情况下。CAPTURE_MODE_MAXIMIZE_QUALITY(最大化质量模式):优先考虑图像质量,可能会增加延迟或降低帧率。适用于需要高质量图像的场景,如摄影、视频制作等。在此模式下,相机会使用更高的分辨率、更高的动态范围和更精细的色彩处理。
2024-12-03 00:36:17
383
原创 【Android】ZipException: Invalid zip entry path: /xxxx 错误
对于以 Android 14 为目标平台的应用,Android 通过以下方式阻止 Zip 路径遍历漏洞:如果 zip 文件条目名称包含“…”或以“/”开头,则 ZipFile(String) 和 ZipInputStream.getNextEntry() 会引发 ZipException。应用可以通过调用 dalvik.system.ZipPathValidator.clearCallback() 来选择退出此验证。此外,您还可以监听相关的回调。
2024-11-04 10:12:29
339
原创 【Android Compose】Compose LaunchedEffect,DisposableEffect,SideEffect
Compose里面附带效应是指对应用的其余部分可见的任何更改。
2024-10-27 01:25:15
462
原创 【Android】Room 如何判断操作结果
在这些操作完成后,我们希望能够得知操作是否成功,以便进行后续的逻辑处理。在上述代码中,我们通过调用insert、update和delete方法来进行数据库操作,并根据返回的结果来判断操作是否成功。通过这种方式,我们可以方便地获取数据库操作的结果,并根据需要进行相应的处理。根据Room的规范,这些方法会返回受影响的行数,我们可以根据这些返回值来判断操作是否成功。为了判断数据库操作是否成功,我们可以在Room的DAO层中使用返回类型为int的方法,并在方法中返回受影响的行数。
2024-10-25 17:37:19
281
原创 【Android】Compose ConstraintLayout 如何设置子组件内部均分
通过 ConstraintLayout 和 createHorizontalChain,你可以轻松实现子元素宽度均分的布局,类似于 LinearLayout 中的 weight 功能。这个方法非常灵活,适合实现复杂的布局需求,同时可以精确控制每个元素在链中的分布方式。
2024-10-24 12:02:54
562
原创 【Android】ClassCastException: Class cannot be cast to Parameter
检查你的混淆,是不是把数据类添加进去了。
2024-10-24 09:54:56
219
原创 【Android Compose】Compose Coil 如何实现网络图片缓存
其实 coil 是通过 imageLoader 对 url 进行图片加载的,并且在幕后也进行了缓存工作。在 MainActivity 中可以直接调用 ImageLoader ,这是 Coil 默认的图片加载器。下面我们将自定义自己的图片加载器以满足我们开发中的各种需求。创建 MyApplication 继承 Application 并实现 ImageLoaderFactory 的接口,在 newImageLoader 方法中重写我们自己的图片加载器覆盖掉默认的。
2024-10-23 10:00:56
406
原创 【Android】IllegalArgumentException: parameter must be a descendant of this view Error
根据上面的代码片段, 用于防止获得焦点,以便 or 可以请求焦点。当我尝试使用 Intent 或 finish() 返回此视图时,会发生此错误;当我使用 Back Button 时,偶尔也会出现问题。他定义在查找 a 以获得焦点时 与其后代之间的关系。必须是以下常量值之一。
2024-10-16 22:30:06
292
翻译 【Android Compose】Jetpack Compose 中的重组
Recomposition 是 #JetpackCompose 中的一个关键概念。这是在状态更改时自动更新 UI 的过程。这允许您创建动态和响应式 UI,而无需在每次状态更改时手动更新 UI。重组由对 state 对象的更改触发。状态对象是可以观察和更改的对象。当状态对象发生更改时,Compose 将自动重组界面。重组是一个强大的工具,可以帮助您创建动态且响应迅速的 UI。但是,了解重组的工作原理以便有效地使用它非常重要。尽管存在这些挑战,但重组是一个强大的工具,可以帮助您创建动态且响应式的 UI。
2024-10-16 21:57:05
122
原创 【Kotlin】Kotlin中如何外部重写internal open方法
最近遇到一个需要外部重写AbstractComposeView的internalOnMeasure的需求,那么我i们以此为例,看看如何破了kotlin的internal之道。
2024-10-10 14:28:34
405
原创 【Android】Room 添加新表的迁移策略
有一个疑问新增room Entity时是否要升级数据库版本并写迁移策略, 答案是肯定的, 当room新增通过更新数据库版本以及创建相应的迁移策略来添加新表。以开源库CacheKRM为例, 展现如何升级的过程。
2024-10-10 12:03:47
401
原创 【Android Compose】Compose中如何delay一个事件
我们可以通过这几种方式Hander.postDelayed() CoroutineScope LaunchedEffect。在调用的 Composable 中,相应地对回调做出反应:onHide。
2024-10-10 11:47:13
248
原创 【Android】Room cannot verify the data integrity
同样,如果以前的数据库模式不在线上,则既不需要增加数据库版本,也不需要回退到破坏性迁移。如果不增加数据库(推荐):应该从Android设置中清除应用程序的应用程序数据。如果确实增加了数据库版本:将需要编写数据库迁移代码来解释数据库模式的任何更改。如果的应用程序是在线的,可能需要增加数据库版本并提供适当的迁移。因为清除应用程序数据总是有效的,所以我每次都采用这种方法。当第一次遇到此消息时,很可能正在使用未发布的数据库版本。如果是这种情况,很可能不应该增加数据库版本。简单地清除应用数据将移动你通过异常。
2024-10-06 14:38:56
276
原创 【Android Compose】Compose Row和Column 如何设置内部组件之间的距离
如果需要根据特定规则在元素之间分配空间, 请使用 horizontalArrangement。如果需要为每个元素添加内边距,请使用 Modifier.padding。如果需要在特定元素之间添加固定大小的间距, 请使用 Spacer。
2024-09-15 18:12:45
642
原创 【Android Compose】Compose DropdownMenu width 设置和父Box宽度一样
在 Compose 中,设置 DropdownMenu 的宽度与父 Box 的宽度相同需要一些技巧,因为 DropdownMenu 的宽度默认是由其内容决定的。这两种方法都可以实现 DropdownMenu 与父 Box 宽度相同的效果。选择哪种方法取决于具体需求和代码风格。
2024-09-15 18:07:55
350
原创 【Androd Compose】如何设置DropdownMenu的宽度和Text一致
请注意,在使用 DropdownMenu 时,需要确保它在 Box 中的 Text 下方正确显示。可以使用 Modifier.clickable 来触发 DropdownMenu 的展开,并根据需要调整 Box 中元素的位置。可以使用 Modifier.onGloballyPositioned 获取 Text 的宽度,并将其设置为 DropdownMenu 的宽度。可以使用 SubcomposeLayout 测量 Text 的宽度,并将其用作 DropdownMenu 的宽度约束。
2024-09-15 18:02:30
368
原创 【Android Compose】Compose 设置宽高比
如果此参数设置为 true,则可组合项将首先尝试匹配高度约束,然后根据宽高比调整宽度。如果设置为 false(默认值),则可组合项将首先尝试匹配宽度约束, 然后根据宽高比调整高度。例如,aspectRatio(1f) 表示宽度和高度相等,aspectRatio(16f / 9f) 表示宽高比为 16:9。请注意,aspectRatio 修饰符会根据可组合项的父级布局和自身的约束来确定最终的尺寸。在 Compose 中,可以使用 Modifier.aspectRatio 来设置可组合项的宽高比。
2024-09-15 15:10:06
422
原创 【Android Compose】Compose 如何设置组件的宽高
如果需要填充父级布局的可用空间,请使用 Modifier.fillMaxWidth 和 Modifier.fillMaxHeight。如果需要设置固定的宽高,请使用 Modifier.size 或 Modifier.width 和 Modifier.height。如果需要可组合项根据其内容自动调整大小, 请使用 Modifier.wrapContentSize。如果需要强制可组合项具有指定的尺寸,请使用 Modifier.requiredSize。
2024-09-15 15:06:26
567
原创 【Android Compose】Compose 如何为Button设置内边距
在 Compose 中,您可以使用 Button 的 contentPadding 参数来设置其内边距。contentPadding 参数接受一个 PaddingValues 对象,可以使用它来指定按钮内容的内边距。如果您只想设置按钮内容的内边距,请使用 contentPadding 参数。如果您需要设置整个按钮的内边距,请使用 Modifier.padding。
2024-09-15 15:00:49
370
原创 【Android Compose】Compose Text设置字间距
请注意,TextUnit 是一个实验性 API,因此您需要使用 @OptIn(ExperimentalUnitApi::class) 注解来启用它。或者需要更精细地控制字间距,可以使用 AnnotatedString 并为不同的字符或字符串段设置不同的 letterSpacing 值。letterSpacing 属性接受一个 TextUnit 值,用于指定字间距的大小。在 Compose 中,您可以使用 TextStyle 的 letterSpacing 属性来设置 Text 可组合项的字间距。
2024-09-15 14:56:31
365
原创 【Android Compose】如何像TextView一样设置文本居中对齐
我们一般在textView中设置layout_gravity=“center”,那么Compose中呢?使用wrapContentHeight。
2024-09-13 22:58:49
406
原创 【Android Compose】Compose 如何给Button设置颜色
【代码】【Android Compose】Compose 如何给Button设置颜色。
2024-09-13 22:56:01
313
原创 【Android Compose】Compose 中ConstraintLayout 如何像在Xml中一样设置weight
以往我们在ConstraintLayout中定义如下。那么如何在Compose中这么用呢。
2024-09-13 22:51:18
179
测试2.14.txt
2020-03-07
web2.1.html
2020-03-06
编译作业2.6.jpg
2020-03-04
编译作业2.5.jpg
2020-03-04
编译作业2.3.jpg
2020-03-04
编译作业2.1.jpg
2020-03-04
编译作业1.4.txt
2020-03-01
编译作业1.1.txt
2020-03-01
测试作业1.2.txt
2020-02-29
测试作业1.1.txt
2020-02-29
7.2_排序计算次数.cpp
2019-10-29
7.1_内部排序算法排序.CPP
2019-10-29
6.2_二叉排序树.cpp
2019-10-29
6.1_顺序查找.CPP
2019-10-29
5.2_MGRAPH1.CPP
2019-10-29
5.1_MGRAPH.CPP
2019-10-29
4.4_算子树数.CPP
2019-10-28
4.3_调换子树.CPP
2019-10-28
4.1_递归遍历.CPP
2019-10-28
3.2_舞伴配对问题.cpp
2019-10-28
3.1_栈与回文.CPP
2019-10-28
2.2_约瑟夫环链表.cpp
2019-10-28
2.1_链表基本练习题.CPP
2019-10-28
1.2_约瑟夫环.CPP
2019-10-28
1.1_顺序表.CPP
2019-10-28
Git 如何在已存在目录中初始化仓库
2023-06-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人