android studio导入flutter报红

  1. import io.flutter.* 报红时, 引入flutter.sdk下的flutter.jar即可
#以下报红
import io.flutter.embedding.engine.plugins.FlutterPlugin;
import io.flutter.embedding.engine.plugins.activity.ActivityAware;
import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding;
import io.flutter.plugin.common.MethodCall;
import io.flutter.plugin.common.MethodChannel;
import io.flutter.plugin.common.MethodChannel.MethodCallHandler;
import io.flutter.plugin.common.MethodChannel.Result;

build.gradle

def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties') # 从项目根目录下获取flutter.sdk配置字段
if (localPropertiesFile.exists()) {
    localPropertiesFile.withReader('UTF-8') { reader ->
        localProperties.load(reader)
    }
}
def flutterRoot = localProperties.getProperty('flutter.sdk')
dependencies {
	...略
    compileOnly files("$flutterRoot/bin/cache/artifacts/engine/android-arm/flutter.jar")
}

local.properties

#增加如下一行
flutter.sdk=E:\\temp\\flutter
  1. androidx.annotation.NonNull报红, 引入androidx.annotation:annotation即可
#报红
@NonNull

build.gradle

dependencies {
	...略
    implementation 'androidx.annotation:annotation:1.0.2'
}
  1. FlutterPlugin获取Activity, 实现ActivityAware接口即可(java)
public class MapToolPlugin implements FlutterPlugin, MethodCallHandler, ActivityAware {
	...略其它代码
	private Activity activity;
	 //获取activity
	 @Override
	 public void onAttachedToActivity(ActivityPluginBinding activityPluginBinding) {
	   activity = activityPluginBinding.getActivity();
	 }
}

#使用Intent去跳转
activity.startActivity(new Intent(activity, xxxActivity.class));
  1. kotlin版本获取Activity
import io.flutter.plugin.common.PluginRegistry.Registrar
class MapToolPlugin(registrar: Registrar) : Application.ActivityLifecycleCallbacks {
		@JvmStatic
        fun registerWith(registrar: Registrar) {
            if (registrar.activity() == null) {
            }
        }
}

#然后就可以使用Intent去跳转到对应的控件啦
val intent = Intent(registrar.activity(), xxxActivity::class.java)

猜你喜欢

转载自blog.csdn.net/zoeou/article/details/127238796