欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android如何在原生App中嵌入Flutter

 更新時間:2021年03月13日 12:02:06   作者:我是綠色大米啊  
這篇文章主要介紹了Android如何在原生App中嵌入Flutter,幫助大家更好的理解和學(xué)習(xí)Android開發(fā),感興趣的朋友可以了解下

本文參考文檔Add Flutter to existing apps。

首先有一個可以運(yùn)行的原生項(xiàng)目

第一步:新建Flutter module

Terminal進(jìn)入到項(xiàng)目根目錄,執(zhí)行flutter create -t module ‘module名字'例如:flutter create -t module flutter-native

執(zhí)行完畢,就會發(fā)現(xiàn)項(xiàng)目目錄下生成了一個module

第二步:同步Flutter module依賴

進(jìn)入到新生成的Flutter module目錄下的.android目錄下,命令是cd .android/,然后執(zhí)行gradlew flutter:assembleDebug,mac下./gradlew flutter:assembleDebug

這過程根據(jù)網(wǎng)絡(luò)情況,可能有點(diǎn)長。

結(jié)束之后在.android/Flutter/build/outputs/aar/目錄下會生成flutter-debug.aar

第三步:設(shè)置JDK版本

在app的build.gradle文件中加入:

compileOptions { sourceCompatibility 1.8 targetCompatibility 1.8 }

第四步:依賴Flutter module

settings.gradle中加入

include ':app'
setBinding(new Binding([gradle: this]))
evaluate(new File(
  settingsDir.parentFile,
  'FlutterNativeApplication/flutter_native/.android/include_flutter.groovy'
))

注意:最后一個參數(shù)最好寫全路徑!

在app/build.gradle中

dependencies {
 ……
 implementation project(':flutter')
}

到此準(zhǔn)備過程結(jié)束,寫代碼測試一下,我使用的是Fragment方式。當(dāng)然也有View的方式。

MainActivity.kt ↓

class MainActivity : AppCompatActivity() {

 override fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  supportRequestWindowFeature(Window.FEATURE_NO_TITLE)
  setContentView(R.layout.activity_main)
  val tx = supportFragmentManager.beginTransaction()
  tx.replace(R.id.content, Flutter.createFragment("route"))
  tx.commit()
 }
}

activity_main.xml ↓

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 tools:context=".MainActivity">

 <FrameLayout
  android:id="@+id/content"
  android:layout_width="match_parent"
  android:layout_height="match_parent"></FrameLayout>

</android.support.constraint.ConstraintLayout>

以上就是Android如何在原生App中嵌入Flutter的詳細(xì)內(nèi)容,更多關(guān)于Android 原生App中嵌入Flutter的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論