自从把Flutter SDK中的analysis_options.yaml copy到项目根目录后就***,当时是700多个error,警告记不清了,提示信息有7k个,总共花了一天半全部改完。
所以还是得养成良好的代码编写习惯
自从把Flutter SDK中的analysis_options.yaml copy到项目根目录后就***,当时是700多个error,警告记不清了,提示信息有7k个,总共花了一天半全部改完。
所以还是得养成良好的代码编写习惯
在 Android 原生中执行 shell 可以使用 Runtime 的这些类,更多的会选择第三方开发者封装好的库来调用 shell,完整的终端模拟器,如 termux,Android Terminal 等都涉及到一些 jni 通信,C 语言中 system 函数可以执行命令行命令,python 中则是 os.system 函数,各类语言都有执行命令行的函数与方法,在 dart 中,我们通过 Process 类来实现这些功能
写这个的一切起因都得从我某天切换了酷安 App 的夜间模式说起,看个 Gif,忽略图中其他无关项。
这种的动画在 awesome-Flutter 上好像见到过,但是记得只是类似,有一个 App 的首次引导页跟这个有点像,不过那个是在一个 PageView 切换的时候的动画。上图的酷安 App 是原生应用,可以看到我在第三次切换主题的时候滑动了一个横向的类似于 Flutter ListView 的东西,再次点击切换主题,ListView 的状态变化了,所以我怀疑酷安是用 StartActivity 的方式(太久没碰原生 UI 了,所以只是猜测)
如何让 Flutter 程序可以跨应用的更改其他应用的状态呢,先看原生如何实现,其次再用 MethodChannel 对接 Flutter 就行了,所以此篇更多的是安卓原生开发的知识,提到原生开发跨应用发送消息或者更改状态,有两个东西能够实现这样的需求,一个是 ContentObserver,另一个就是 Broadcast
不管写得好坏,我也开始尝试记录一下学习的东西,分享给需要的人,直接上代码。