当前位置: 首页 > news >正文

抚顺市建设局网站企业所得税怎么合理节税

抚顺市建设局网站,企业所得税怎么合理节税,如何彻底清除网站的网页木马,成都网站seo服务接上篇#xff1a;Flutter3引用原生播放器-IOS(Swift)篇 安卓端原生播放器的接入思路与ios基本一致#xff0c;所以本篇就不废话了#xff0c;直接上代码#xff1a; 创建插件VideoViewPlugin实现FlutterPlugin#xff1a; package io.flutter.plugins.videoplayer;imp…接上篇Flutter3引用原生播放器-IOS(Swift)篇 安卓端原生播放器的接入思路与ios基本一致所以本篇就不废话了直接上代码 创建插件VideoViewPlugin实现FlutterPlugin package io.flutter.plugins.videoplayer;import android.util.Log;import androidx.annotation.NonNull;import io.flutter.embedding.engine.plugins.FlutterPlugin; import io.flutter.embedding.engine.plugins.activity.ActivityAware; import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding;public class VideoViewPlugin implements FlutterPlugin, ActivityAware {private final static String TAG VideoViewPlugin;FlutterPluginBinding fpBinding;Overridepublic void onAttachedToEngine(NonNull FlutterPluginBinding binding) {fpBinding binding;Log.e(TAG, onAttachedToEngine);}Overridepublic void onDetachedFromEngine(NonNull FlutterPluginBinding binding) {Log.e(TAG, onDetachedFromEngine);}Overridepublic void onAttachedToActivity(NonNull ActivityPluginBinding apBinding) {fpBinding.getPlatformViewRegistry().registerViewFactory(plugins.my_video_player/view, new VideoViewFactory(fpBinding, apBinding));Log.e(TAG, onAttachedToActivity);}Overridepublic void onDetachedFromActivityForConfigChanges() {Log.e(TAG, onDetachedFromActivityForConfigChanges);}Overridepublic void onReattachedToActivityForConfigChanges(NonNull ActivityPluginBinding binding) {Log.e(TAG, onReattachedToActivityForConfigChanges);}Overridepublic void onDetachedFromActivity() {Log.e(TAG, onDetachedFromActivity);} } 由于引用视频播放器时需要用到Activity的context所以实现了ActivityAware接口在onAttachedToActivity方法中注册PlatformViewFactory 创建VideoViewFactory实现PlatformViewFactory package io.flutter.plugins.videoplayer;import android.content.Context;import io.flutter.Log; import io.flutter.embedding.engine.plugins.FlutterPlugin; import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding; import io.flutter.plugin.common.StandardMessageCodec; import io.flutter.plugin.platform.PlatformView; import io.flutter.plugin.platform.PlatformViewFactory;public class VideoViewFactory extends PlatformViewFactory {private final static String TAG VideoViewFactory;private final FlutterPlugin.FlutterPluginBinding fpBinding;private final ActivityPluginBinding apBinding;public VideoViewFactory(FlutterPlugin.FlutterPluginBinding fpBinding, ActivityPluginBinding apBinding) {super(StandardMessageCodec.INSTANCE);Log.e(TAG, VideoViewFactory);this.fpBinding fpBinding;this.apBinding apBinding;}Overridepublic PlatformView create(Context context, int viewId, Object args) {Log.e(TAG, PlatformView-create: args.toString());return new VideoViewPlayer(args.toString(), fpBinding, apBinding);}}创建VideoViewPlayer实现PlatformView和MethodChannel.MethodCallHandler package io.flutter.plugins.videoplayer;import android.app.Activity; import android.content.Context; import android.util.Log; import android.view.LayoutInflater; import android.view.View;import androidx.annotation.NonNull; import androidx.annotation.Nullable;import com.th.kjjl_flutter.R; import com.videoplayer.player.VideoView;import io.flutter.embedding.engine.plugins.FlutterPlugin; import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding; import io.flutter.plugin.common.MethodCall; import io.flutter.plugin.common.MethodChannel; import io.flutter.plugin.platform.PlatformView;public class VideoViewPlayer implements PlatformView, MethodChannel.MethodCallHandler {private final static String TAG VideoPlayerView;Activity context;private VideoView videoView;private MethodChannel methodChannel;VideoViewPlayer(String viewId, FlutterPlugin.FlutterPluginBinding fpBinding, ActivityPluginBinding apBinding) {this.context apBinding.getActivity();videoView (VideoView) LayoutInflater.from(context).inflate(R.layout.video_player, null);methodChannel new MethodChannel(fpBinding.getBinaryMessenger(), my_video_player_ viewId);methodChannel.setMethodCallHandler(this);}Overridepublic void onMethodCall(NonNull MethodCall call, NonNull MethodChannel.Result result) {Log.e(TAG, call.method call.method);switch (call.method) {case setUrl:String url call.arguments.toString();videoView.initVideoController(context);videoView.setUrl(url);break;case start:videoView.start();break;case pause:videoView.pause();break;case release:videoView.pause();videoView.release();break;case stopFullScreen:videoView.stopFullScreen();break;default:result.notImplemented();}}NullableOverridepublic View getView() {return videoView;}Overridepublic void dispose() {Log.e(TAG, dispose);videoView.pause();videoView.release();methodChannel.setMethodCallHandler(null);methodChannel null;}} 其中的VideoView即引用的第三方播放器库你可以根据自己情况使用常见的安卓端开源播放器如GSY饺子DKPlayer等 video_player.xml ?xml version1.0 encodingutf-8? com.videoplayer.player.VideoView xmlns:androidhttp://schemas.android.com/apk/res/androidandroid:idid/videoViewandroid:layout_widthmatch_parentandroid:layout_heightmatch_parent /在MainActivity中注册插件 class MainActivity : FlutterActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)flutterEngine!!.plugins.add(VideoViewPlugin())} }注意不要在GeneratedPluginRegistrant中去注册插件包括IOS这个类由系统自动生成其它第三方插件注册代码安卓端在MainActivity中注册IOS端在AppDelegate中注册 flutter中的引用以及通信方法上一篇已经写了本篇就不再重复了需要注意的是插件名插件idmethodChannel等安卓IOS和Flutter三端一定要一致
http://www.dnsts.com.cn/news/20782.html

相关文章:

  • 宁波甬晟园林建设有限公司网站福建seo关键词优化外包
  • 做网站怎么赚流量怎么自己设计网站
  • 罗湖做网站多少钱论坛推广的步骤
  • 网站建设方案免费下载做整合营销的网站
  • 网站充值功能怎么做网络策划营销方案
  • 制作网站的页面设计怎么做wordpress分表存储
  • 网站建设业务平均工资网站正在建设中英文
  • 做网站设计的公司叫什么合肥做网站做推广
  • 闵行网站推广网站导航的重要性
  • 温州瓯北做网站wordpress调用最新文章插件
  • 贵州省和城乡建设厅官方网站网络信息推广服务
  • wordpress内存溢出seo线下培训课程
  • 规模大的企业建站设备管理系统下载
  • 6成都网站建设爱做奈官方网站
  • 网站建设实训个人总结3000字网站关键词搜索优化怎么做
  • 天津市城乡建设部网站首页discuz做网站赚钱经历
  • 网站推广软件费用是多少驾校官方网站 模板
  • 长沙企业建站系统附近广告牌制作电话
  • 站长工具seo哪些公司可以做网站
  • 网站建设套餐方案网站权重
  • 诸城网站建设公司排名厦门企业网站建设专家
  • 重庆网站建设公司哪个最好做ppt找图片的网站有哪些
  • 网站哪里买外链做资讯网站盈利
  • 网站查询访问域名网站如何做口碑营销
  • 网站中的ppt链接怎么做的wordpress ddos 2014
  • 手机网站优化排名首页群晖 wordpress 失败
  • 网站建设幽默莞城最新通告
  • 成都建立网站做网站难度大吗
  • 广安网站开发做旅游网站怎样
  • 做网站可以做哪些方面的本地唐山网站建设