android studio导入flutter报红

10 篇文章 0 订阅
4 篇文章 0 订阅
  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)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值