package com.tofly.latte_core.utils;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;

import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK;


public class IntentUtils {

  public static final int PHOTO_REQUEST_CAREMA = 1;// 拍照
    public static final int PHOTO_REQUEST_GALLERY = 2;// 从相册中选择
    public static final int PHOTO_REQUEST_CUT = 3;// 剪切结果

    /**
     * 确保同一个页面只打开一个
     */
    public  static void startSingleActivity(Context context, Class<?> classOfT){
        //确保同一个页面只打开一个
        Intent intent=new Intent();
        intent.setClass(context, classOfT);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP| Intent.FLAG_ACTIVITY_SINGLE_TOP);
        context. startActivity(intent);
    }

    /**
     * 确保同一个页面只打开一个 传id
     */
    public  static void startSingleActivity(Context context, Class<?> classOfT, String key, String id){
        //确保同一个页面只打开一个
        Intent intent=new Intent();
        intent.setClass(context, classOfT);
        intent.putExtra(key,id);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP| Intent.FLAG_ACTIVITY_SINGLE_TOP|Intent.FLAG_ACTIVITY_NEW_TASK);
        context. startActivity(intent);
    }


    /**
     * 确保同一个页面只打开一个 传id
     */
    public  static void startSingleActivity(Context context, Class<?> classOfT,String bundleName, Bundle bundle){
        //确保同一个页面只打开一个
        Intent intent=new Intent();
        intent.setClass(context, classOfT);
        intent.putExtra(bundleName,bundle);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP| Intent.FLAG_ACTIVITY_SINGLE_TOP);
        context. startActivity(intent);
    }  /**
     * 确保同一个页面只打开一个 传id
     */
    public  static void startSingleActivity(Context context, Class<?> classOfT, Bundle bundle){
        //确保同一个页面只打开一个
        Intent intent=new Intent();
        intent.setClass(context, classOfT);
        intent.putExtra("bundleName",bundle);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP| Intent.FLAG_ACTIVITY_SINGLE_TOP);
        context. startActivity(intent);
    }
    /**打开相册
     *
     * @param activity
     */
    public static void getAlbum(Activity activity) {
        // 激活系统图库，选择一张图片
        Intent intent = new Intent(Intent.ACTION_PICK);
        intent.setType("image/*");
        // 开启一个带有返回值的Activity，请求码为PHOTO_REQUEST_GALLERY
        activity.  startActivityForResult(intent, PHOTO_REQUEST_GALLERY);

    }

    /** 激活相机
     *
     * @param activity
     */
    public static void getCamera(Activity activity) {

        Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");

        activity. startActivityForResult(intent, PHOTO_REQUEST_CAREMA);

    }
    /** 打电话
     *
     * @param
     */
    public void diallPhone(Context context, String phoneNum) {
        Intent intent = new Intent(Intent.ACTION_DIAL);
        Uri data = Uri.parse("tel:" + phoneNum);
        intent.setData(data);
        context. startActivity(intent);
    }

    /**
     * 调网页
     * @param
     * @param
     */
public static void getInternet(Context context, String url){
    Uri uri = Uri.parse(url);    //设置跳转的网站
    Intent intent = new Intent(Intent.ACTION_VIEW, uri);
    context. startActivity(intent);
}

    /*
     * 剪切图片
     */
    public static void  getcrop(Activity activity, Uri uri) {
        // 裁剪图片意图
        Intent intent = new Intent("com.android.camera.action.CROP");
        intent.setDataAndType(uri, "image/*");
        intent.putExtra("crop", "true");
        // 裁剪框的比例，1：1
        intent.putExtra("aspectX", 1.7);
        intent.putExtra("aspectY", 1.2);
        // 裁剪后输出图片的尺寸大小
        intent.putExtra("outputX", 170);
        intent.putExtra("outputY", 120);

        intent.putExtra("outputFormat", "JPEG");// 图片格式
        intent.putExtra("noFaceDetection", true);// 取消人脸识别
        intent.putExtra("return-data", true);
        // 开启一个带有返回值的Activity，请求码为PHOTO_REQUEST_CUT
        activity.startActivityForResult(intent, PHOTO_REQUEST_CUT);
    }
}
