Android에는 기본 애플리케이션 통합 flutter가 있음

2461 단어
공식 문서
1. flutter module 만들기 안드로이드 Studio Terminal에 다음과 같이 입력합니다.
  cd ..
  flutter create -t module 

원래 응용 프로그램의 부모 디렉터리에 flutter 모듈을 만듭니다. flutter 모듈을 원래 응용 프로그램의 하위 모듈로 사용하려면 cd를 절약하십시오.이 단계, 당신의 flutter module 이름
2. 당신의 앱에 flutter module 의존 (1) 원래 응용 프로그램의setting을 추가합니다.gradle에 다음 코드 추가
setBinding(new Binding([gradle:this]))
evaluate(new File(
    settingsDir.parentFile,  //        mudule,  settingsDir
    '/.android/include_flutter.groovy'
))

(2) 원래 응용된build.gradle의 dependencies에 flutter 의존 추가
compile project(':flutter') 

나의gradle 버전은 비교적 낮고compile를 사용하며, 높은 버전은implementation을 사용하며, 원래 응용 프로그램과 일치합니다
3. sync를 실행하는 데 오류가 없으면 성공하지만, flutter를 편집하려면 창을 하나 더 열어야 합니다. Open 당신의fullter module
4. 원생Activity에서 flutter로 건너뛰기
public class FlutterActivity extends BaseActivity {
    private FlutterView flutterView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.tr_activity_empty);
        flutterView= Flutter.createView(this,getLifecycle(),"route1");
        FrameLayout.LayoutParams layout=new FrameLayout.LayoutParams(
            FrameLayout.LayoutParams.MATCH_PARENT,FrameLayout.LayoutParams.WRAP_CONTENT);
        addContentView(flutterView,layout);
    }
}

flutter의main.dart에서 프로세스 라우팅
import 'dart:ui';
import 'package:flutter/material.dart';

void main() => runApp(_widgetForRoute(window.defaultRouteName));

Widget _widgetForRoute(String route) {
  switch (route) {
    case 'route1':
      return SomeWidget(...);
    case 'route2':
      return SomeOtherWidget(...);
    default:
      return Center(
        child: Text('Unknown route: $route', textDirection: TextDirection.ltr),
      );
  }
}

다음은 제가 겪은 문제입니다.
4
  • Gradle DSL method not found:'Google()'이유: 나의gradle 버전이 너무 낮기 때문에flutter의gradle 버전이 비교적 높은 해결 방법: flutter 설치 디렉터리를 열면packages/fluttertools/gradle/flutter.gradle 파일, 구글()을 maven {url로 바꾸기https://maven.google.com/' }

  • 2.Could not download asm-util.jar settring../열기Build../Gradle offline work 옵션 취소
    3. buildToolsVersion 등 버전 문제는 flutter module 아래에 있습니다.android/Flutter/build.gradle에서 관련 버전 설정이 원래 응용 프로그램과 일치합니다

    좋은 웹페이지 즐겨찾기