
package com.jld.vod.ui

import android.app.Application
import com.jld.vod.base.BaseActivity

import com.jld.vod.base.MyApplication
import com.jld.vod.view.MainActivity
import com.xuexiang.xpage.PageConfig
import com.xuexiang.xpage.config.AppPageConfig
import com.xuexiang.xutil.XUtil


/**
 * X系列基础库的初始化
 *
 * @author xuexiang
 * @since 2019-07-06 9:24
 */
object XBasicLibInit {
        /**
         * 初始化基础库
         */
        fun init(application: Application) {
            initUtils(application)
            initPage(application)
          //initAOP(application);
            //initRouter(application)
        }

        /**
         * 初始化工具类
         *
         * @param application
         */
        private fun initUtils(application: Application) {
            XUtil.init(application)
            XUtil.debug(MyApplication.isDebug())
            //百度定位
          //  LocationService.get().init(application);
         //   TokenLoginUtils.init(application)

        }
        /**
         * 初始化XPage页面框架
         *
         * @param application
         */
         fun  initPage(application: Application){
            PageConfig.getInstance()
                .setPageConfiguration { context ->
                    //自动注册页面,是编译时自动生成的，build一下就出来了
                    AppPageConfig.getInstance().getPages()
                }
                .debug(if (MyApplication.isDebug())  "PageLog" else null)
                .setContainActivityClazz(MainActivity::class.java)
                //enableWatcher(MyApplication.isDebug())
                .init(application)


        }

        /**
         * 初始化XAOP切片框架
         *
         * @param application
         */
//    private static void initAOP(Application application) {
//        //初始化插件
//        XAOP.init(application);
//        //日志打印切片开启
//        XAOP.debug(MyApp.isDebug());
//        //设置动态申请权限切片 申请权限被拒绝的事件响应监听
//        XAOP.setOnPermissionDeniedListener(new PermissionUtils.OnPermissionDeniedListener() {
//            @Override
//            public void onDenied(List<String> permissionsDenied) {
//                XToastUtils.error("权限申请被拒绝:" + StringUtils.listToString(permissionsDenied, ","));
//            }
//        });
//    }
        /**
         * 初始化XRouter路由
         *
         * @param application
         */
    fun initRouter( application:Application){
//            if (MyApplication.isDebug())
//            {
//                XRouter.openLog()
//                XRouter.openDebug()
//            }
//            XRouter.init(application)
        }

//    /**
//     * 初始化video的存放路径[xvideo项目太大，去除]
//     */
//    public static void initVideo() {
//        XVideo.setVideoCachePath(PathUtils.getExtDcimPath() + "/xvideo/");
//        // 初始化拍摄
//        XVideo.initialize(false, null);
//    }

}