Android VHEditor Flutter开发环境配置

Android VHEditor Flutter开发环境配置,第1张

概述安装VHEditorVHEditor是基于Termux和CodeServer(非微软开源的VSCode服务)的Android下进行软件开发环境,安装方便,VSCode运行稳定,使用体验较好。参考: https://github.com/vhqtvn/VHEditor-Androidhttps://github.comermuxermux-packageshttps://gitee.com/sinojell 安装VHEditor

VHEditor是基于 Termux 和 Code Server (非微软开源的VSCode服务)的AndroID下进行软件开发的环境,安装方便,VSCode运行稳定,使用体验较好。

参考: https://github.com/vhqtvn/VHEditor-Android

https://github.com/termux/termux-packages

https://gitee.com/sinojelly/termux-exec 

配置软件下载安装运行环境

修改apt以支持安装软件

由于Termux不支持第三方工具(比如VHEditor)使用Termux的软件安装源,之前用了个方案修改apt工具限制三方工具使用。用下面的命令二进制修改文件可以规避。后来Termux改为在服务端进行限制,可能VHEditor必须要部署自己的源。

sed -i 's/\x65\x72\x6D\x75\x78\x2F\x66\x69\x6C\x65\x73\x2F\x75\x73\x72\x00\x2F\x64\x61\x74\x61\x2F\x64\x61\x74\x61\x2F\x63\x6F\x6D\x2E\x74\x59\x6F\x75\x20/\x6E\x2E\x76\x73\x63\x2F\x66\x69\x6C\x65\x73\x2F\x75\x73\x72\x00\x2F\x64\x61\x74\x61\x2F\x64\x61\x74\x61\x2F\x76\x6E\x2E\x76\x68\x59\x6F\x75\x20/g' /data/data/vn.vhn.vsc/files/usr/bin/apt

参考:https://github.com/vhqtvn/VHEditor-Android/issues/36

修改下载源

termux-change-repo 点OK,然后点击清华源。

安装必须的软件

pkg install git clang dart make vim

编译安装termux-exec

这个库是为了执行类似 /bin/tar 的命令时,自动加上前缀 /data/data/vn.vhn.vsc/files/usr,从而调用正确的命令。 从下面地址下载适合VHEditor的termux-exec代码:https://gitee.com/sinojelly/termux-exec 然后 make 之后,用make install 安装。 可以用 make test 测试是否工作正常。

然后配置LD_PRELOAD使得termux-exec生效: vim ~/.profile 增加一行: export LD_PRELOAD=/data/data/vn.vhn.vsc/files/usr/lib/libtermux-exec.so

再配置上 Flutter / dart 源: export PUB_HOSTED_URL=https://pub.Flutter-io.cn xport FlutteR_STORAGE_BASE_URL=https://storage.Flutter-io.cn

之后,退出terminal,再次打开就会生效。 生效之后执行 /bin/apt 就能运行。生效前是文件找不到。

安装配置 Flutter

git clone https://github.com/flutter/flutter.git -b stable

执行 Flutter doctor,应该会报错,下载dart-sdk有问题。它会生成 Flutter/bin/cache 目录,把该目录的dart-sdk 删除,然后把前面安装 dart 时已经下载的 dart-sdk 链接到 该目录。

ln -s /data/data/vn.vhn.vsc/files/usr/lib/dart-sdk ~/Flutter/bin/cache/dart-sdk

再次运行 Flutter doctor,它会编译 Flutter 工具,这些工具也是dart写的,每个工具的目录 xxx_tool/src/lib下面是源码,编译后会在 bin/cache里面生成一个 snapshot 文件夹。

如果 Flutter 工具自动编译不过,可以到某个具体的工具目录,比如: Flutter/packages/Flutter_tools目录,然后运行 dart pub get 就会生成.packages文件,自动下载它依赖的包,如果少量的包下载不成功,可以从其它windows/linux 上已经下载的对应版本的包,共享过来,解压缩到 ~/.pub-cache/hosted/pub.Flutter-io.cn/即可。

最后执行 Flutter doctor 会遇到 Unsupported operating system: androID 的问题。

这是因为 Flutter/packages/Flutter_tools/lib/src/cache.dart 里面有个 getBinaryDirs 里面,只定义了 MacOS,linux,windows的 artifacts.zip 下载路径,没有 AndroID 的配置。

如果要临时把这个问题规避过去,可以参考 linux 的配置方式配置一个 AndroID 的,但实际上最终要能在 AndroID 上编译 Flutter 项目,还需要 Flutter 官方支持 AndroID 平台,并且增加适合 AndroID 的 artifacts.zip,以及要有支持 AndroID Termux下运行的 AndroID SDK。还需要比较长的过程。

不过到目前为止,基于 AndroID + Termux + Code Server 的 VSCode Flutter 代码编辑环境基本可以使用了。但目前仅仅是能编辑代码,如果希望能编译,可以关注Flutter项目下面链接的 issue,去点赞关注,如果有这个需求的人多,也许什么时候 Flutter 官方就会支持了,或者 Flutter 也是开源的,社区也许能开发对androID的支持。

  总结

以上是内存溢出为你收集整理的Android VHEditor Flutter开发环境配置全部内容,希望文章能够帮你解决Android VHEditor Flutter开发环境配置所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1046301.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-24
下一篇2022-05-24

发表评论

登录后才能评论

评论列表(0条)

    保存