Android studio flutter项目中关于编写android原生代码的配置

本篇文章主要介绍基于android studio 已经配置好flutter项目的基础上,配置编写 android 原生代码的方式。以下是关于本篇内容使用到的一些工具版本,仅作参考,不代表其它版本不可。

Android studio:Android Studio Iguana | 2023.2.1

flutter:flutter_windows_3.22.0-stable

系统:windows 10


1、在Android studio中的flutter项目中,使用 Open Android module in Android Studio 方式,在新打开的界面中编写 Android 原生代码。右键项目内的android目录,如下图依次找到
        Flutter -> Open Android module in Android Studio

2、如果你点击这个按钮后,打不开新的界面,执行以下操作:
(1)关闭 Android Studio
(2)删除项目内android目录下的 .gradle 和 .diea 文件夹(如下图)
(3)使用 AS 重新打开你的 flutter 项目
(4)再按照上图中的步骤点击 Open Android module in Android Studio,此时就能够打开新界面了,原因暂且不表。

3、在打开的新界面中gradle编译完可能会遇到如下错误:
Could not create task xxxxxxxx‘:‘.this and base files have different roots
错误原因:可能是升级了 Gradle 版本之后,编译出现了这个错误,某位大神在Flutter仓库的issue找到了问题(原Issue地址)。具体原因为项目路径和依赖路径不匹配,也就是PUB_CACNE(执行flutter pub get 后的缓存数据目录)跟项目目录不在同一个盘符导致。
根据错误原因,解决的思路大体分两种:
        第一:降级Gradle 版本,我这里未尝试,据说把 gradle 版本改为 4.1.0 即可
        第二:在项目所在的盘符下自定义 PUB_CACHE 目录
        (1)在项目所在盘符下新建文件夹 flutter_pub_cache(名字仅供参考,可以自定义)
        (2)新建系统环境变量。如下图
                变量名:PUB_CACHE
                变量值:flutter_pub_cache 文件所在的目录

        (3)关闭 Android Studio,在项目所在根目录分别执行命令
                flutter clean
                flutter pub get
        (4)删除 android 目录下的 .gradle 和 .idea 文件夹
        (5)再次使用 AS 打开你的项目

最后,再次使用 Open Android module in Android Studio 打开 Android module 窗口,等待gradle同步成功后,就可以正常的编写android原生代码啦,毕竟 Flutter不能完全取代原生,例如有些三方库(涂鸦SDK等)都只支持原生接入。共勉之!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值