Android导入flutter模块

作者: 0d1ea6d041fa | 来源:发表于2020-07-15 21:31 被阅读0次

    ​我收集了一些学习用的资料,其中包含了很多学习,面试,中高进阶fluuter资料,还有很多视频详解,如果有同学想进一步了解,详情请看文末。也欢迎各路大神门前来装X。

    1、Flutter模块导入 

    1.创建Flutter模块 

    切换到项目的根目录上一层,执行如下命令创建flutter模块 

    在项目的setting.gradle中添加 

    或者根据自己的实际目录修改上述目录,这样就绑定了Flutter模块,在项目结构视图中应该就能看到Flutter的结构。 

    这样,flutter模块就已经引入了,但是自己的项目中还没实际引用Flutter,还不能使用Flutter相关代码,需要在自己的项目中引入flutter 

    2.引用flutter模块 

    app下的build.gradle添加implementation project(':flutter')(或者compile project(':flutter')) 

    在引用的时候注意下native的minSdkVersion,要和flutter模块的统一,否则会报错; 

    同时,对于老项目,可能会有 

    Cause: assert appProject != null 

    | | 

    null false 

    需要把项目的module名字改成app 

    3.修改native代码 

    Flutter1.12前需要在Application继承FlutterApplication或者onCreate中Flutter1.12之后的版本就不需要了,Flutter已经自动注册了。 

    2.native项目加载Flutter页面 

    老版本的Flutter使用 

    来创建view, 

    addContentView添加View, 

    Flutter1.12后没有了这个方法,直接创建一个Activity继承自,Flutter1.12之后FlutterActivity使用,启动这个Activity即可,即可进入Flutter的demo页面。 

    3.Flutter模块热重载 

    1.使用debug包; 

    2.关闭杀死当前应用; 

    3.终端到Flutter(h_flutter)目录,输入,会显示 

    等待连接手机 

    4.打开app,会提示同步文件到设备 

    To hot reload changes while running, press "r". To hot restart (and rebuild state), press "R". 

    热重载按r,热重启按R 

    可能遇到的问题: 

    上面说的新老版本的区分是Flutter1.12,之前为老版本。 

    1.首先最重要的是看下,正使用的Flutter版本,1.12之后的版本的话要注意有些改动,比方说:Flutter.createView()已经不可用了,而且FlutterActivity已经推荐使用, 

    官方说明:

    https://github.com/flutter/fl...

    need-to-insert-img

    2.Could not HEAD '

    http://repo1.maven.org/maven2..._embedding_debug/1.0.0-a67792536ca236a971d0efbcfd7af4efb8f6c119/flutter_embedding_debug-1.0.0-a67792536ca236a971d0efbcfd7af4efb8f6c119.pom'. Received status code 501 from server: HTTPS Required

    need-to-insert-img

    maven已经推荐使用https了 

    Flutter里面已经指定了编译版本,所以自己项目的build.gradle中也要指定。 

    [FATAL:flutter/shell/platform/android/library_

    loader.cc(24)] Check failed: result.

    need-to-insert-img

    而且debug可以运行,release不可以运行,那就是混淆问题 

    还有其他问题,版本兼容或者其他的,没一一列举,欢迎留言。

    https://shimo.im/docs/dYkqrQcyr98jPKYX/《android学习面试fulutter进阶资料免费获取》,可复制链接后用石墨文档 App 或小程序打开。

    相关文章

      网友评论

        本文标题:Android导入flutter模块

        本文链接:https://www.haomeiwen.com/subject/aatshktx.html