- 博客(24)
- 收藏
- 关注
原创 MissingPluginException(No implementation found for method availableCameras on channel plugins.flutte
是因为flutter attach时只会把dart代码更新到正在运行的程序中,而plugin是原生代码,没有热更到程序中。如果你的flutter项目是打包成aar的,然后第一次导入camera库,attach到手机上后,获取相机时报这个错。解决办法就是不要热更,把flutter项目打包成aar后,再打包主项目。记录下浪费我一下午的“不是问题的问题”
2025-11-21 17:00:42
200
原创 心法:私钥加密与私钥解密
摘要:私钥仅持有者拥有,用于加密时可实现数据完整性校验、数字签名和证书颁发,通过公钥解密验证来源;私钥解密则确保数据私密性。公钥可公开获取,私钥加密结合哈希可用于建立"我量你不敢"的责任追究机制,而私钥解密保证只有持有者能解读密文。这种机制兼顾了身份验证与数据保密两大核心需求。
2025-09-03 13:13:00
406
原创 安卓笔记—LaunchMode
LaunchMode处理的是: Task(实例),Activity类,Activity实例三者之间的对应关系所谓的对应关系就是:1对1,1对多,多对1,多对多.而TaskAffinity处理的是:启动一个应用时要选择哪个Task存放.此文只讲对应关系.注意:一个Activity实例不会对应多个Activity类,一个Activity实例不会对应多个Task实例.唯一可以存在多对多关系的是Task实例与Activity类.
2024-09-11 18:07:04
475
翻译 安卓文档翻译—com.android.server.wm.BLASTSyncEngine
但是,只要其监视的层次结构不与任何其他同步的监视层次结构重叠,它就会并行运行。目前,以“并行”方式启动的同步会隐式忽略其直接成员下方的子树,除非这些成员是活动(WindowStates 被视为活动的“一部分”)。这允许“分层”并行,例如,仅在任务级别的同步可以与仅包含任务活动的另一个同步并行运行。这是通过添加依赖项来完成的。为了避免依赖循环,如果同步 B 最终依赖于同步 A,并且将容器添加到由 B 监视的 A,则该容器将从 B 移动到 A,而不是创建循环依赖项。例如,用于同步调整窗口容器的所有子项的大小。
2024-09-07 09:30:26
185
原创 声明式编程语言是最理想的编程语言
NP问题的概念太抽象,我在此只是所有的NP问题在多项式时间内都能规约到NP完备问题,解决了此NP完备问题,所有NP问题也都能得到解决所有的业务都可以化简成某个终极业务。解决了这个终极业务,也就解决了世界上所有的业务。所有对业务逻辑进行抽象的工作,都是向这个终极业务的靠近,也是指令式编程语言在实现声明式编程语言的过程。
2024-09-01 15:14:39
535
翻译 kotlin文档翻译—tailrec关键字
为了符合 tailrec 修饰符的资格,函数必须调用自身作为其执行的最后一个操作。当递归调用后、try/catch/finally 块内或打开的函数上有更多代码时,不能使用尾递归。Kotlin 支持一种称为尾递归的函数式编程风格。对于某些通常使用循环的算法,您可以使用递归函数,而不会有堆栈溢出的风险。此代码计算余弦的不动点,余弦是一个数学常数。它只是从 1.0 开始重复调用 Math.cos,直到结果不再改变,对于指定的 eps 精度产生 0.7390851332151611 的结果。
2024-08-30 13:17:59
193
原创 安卓笔记—调用栈之从Hander.post/Handler.sendMessage到Runnable.run/Handler.handleMessage
先看传入Hander.post的Runnbal被存在了哪里getPostMessage::Runnable:return的数据流动MessageQueue.mMessages的数据流动dispatchMessage 中判断Message.callback是否为空,如果为空就会调用Handler.handleMessage到这里我们只是看到了Runnable和Message被传到了处理他们的函数中,但是没有看到他们是什么时候被处理的,也就是时机流还没有搜。
2024-08-16 17:23:31
642
原创 C++笔记—thread join detach
子线程往往是耗时操作,如果主线程中任务较少,在子线程结束前结束了,那么根据上面三点,子线程就会在没有完成任务的情况下被迫结束。被 detach 后的线程不能被 join,也就是不能被等待。这也许是 detach 为什么叫 detach 的原因吧。
2024-08-15 17:33:00
574
原创 安卓笔记—调用栈之从View.invalidate到Choreographer.postCallback
如果你此时的问题是Choreographer.postCallback这个函数是干什么的?就能解释invalidate函数为什么能触发onDraw了。
2024-08-14 22:19:31
233
原创 安卓笔记—调用栈之从vsync到onTouchEvent以及MotionEvent从哪里来
ConsumeBatchedInputRunnable继承自Runnbale,只有一个实例:ViewRootImpl.mConsumedBatchedInputRunnable,那么下一步就是搜索数据流动,但是他的数据流动与ViewRootImpl.mTraversalRunnable的一模一样,因此不在这里重复了。因此,输入事件会分批处理,每帧仅向应用传送 1 个事件。上面这句话对我来说很模糊,既说了“分批处理”,又说了“每帧1个事件”,我没有读懂他到底是怎么个意思。难道意思是每批只有1个事件吗?
2024-08-13 23:55:54
802
原创 安卓笔记—调用栈之从vsync到ondraw
TraversalRunnable继承自Runnbale,只有一个实例:ViewRootImpl.mTraversalRunnable,那么下一步就是搜索数据流动。接下来搜索包含doCallbacks的调用栈。从onDraw向上找。
2024-08-13 19:00:16
408
原创 安卓笔记—调用栈之从Activity.startActivity到Activity.onCreate
相关请看安卓笔记—应用进程是如何创建启动的懂原理就行了,调用栈有什么用?刚明白一个原理之后,和这个原理相关的千千万万个方面还等着你去熟悉。当应用没有按照你预想的方式运行时,就是这千千万万个方面在做怪,那个时候你就恨不得有这样一个调用栈来查找问题了。// app 进程android.app.Activity.startActivity::Intent:android.app.Activity.startActivity::Intent,Bundle:android.app.Activity.sta
2024-08-12 23:05:46
457
原创 安卓笔记—Activity生命周期的路径
上面的生命周期描述了应用能够长时间驻留于哪些状态。从生命周期数值来看,从小到大的顺序下,描述了应用从。待补充:在哪些时机下,会从哪个起点变化到哪个终点?,因此循环的起点值不一定小于终点值。但是在正常使用过程中,
2024-08-10 14:21:29
307
原创 unable to install new version of ‘/lib/x86_64-linux-gnu/libpng12.so.0‘: No such file or directory
unable to install new version of '/lib/x86_64-linux-gnu/libpng12.so.0': No such file or directorysudo add-apt-repository ppa:linuxuprising/libpng12sudo apt updatesudo apt install libpng12-0
2022-07-13 19:30:53
984
5
原创 Base64 编码:文档翻译,解释与举例
Base64 编码:文档翻译,解释与举例文档部分翻译与解释举例文档链接:https://www.ietf.org/rfc/rfc2045.txt文档部分翻译与解释Base64 Content-Transfer-Encoding 目的是用一种人类不可读的形式表示一个八位字节序列。编码和解码算法很简单,但编码数据始终仅比未编码数据大33%。编码过程将输入的24位比特的数据表示为4个字符的输出字符串。将连续的3个8位比特数据形成的24位比特数据看成是4个6位比特的数据,然后将这4个6位比特的数据变成
2020-05-19 18:58:14
2083
1
原创 android 源码下载地址链接
https://dl.google.com/android/repository/sources-29_r01.ziphttps://dl.google.com/android/repository/sources-27_r01.ziphttps://dl.google.com/android/repository/sources-26_r01.zip。。。。。。https://dl.go...
2020-05-08 16:46:06
1851
原创 如何读源码(新手读源码为什么困难)
前几个月写了一个android源码阅读工具,但担心有人不懂我写这个工具的目的在哪里,现在写写我对于读源码的一些体会。学过英语的同学可以回想一下,当你一篇英语文章一个字都不认识,这篇英语文章给你的感受,这就是新手读源码的感受。一个词的含义可以从字典上查,但一个一个查会耗尽人的耐心,也可以从上下文中多少看出来(自然语音基石word2vec充分证明这一点),但如果上下文中的单词你也不认识,那要如...
2020-03-08 12:29:53
2062
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅