中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Android中利用IntentUtil實現一個跳轉功能

發布時間:2021-02-24 16:13:14 來源:億速云 閱讀:148 作者:戴恩恩 欄目:移動開發

本文章向大家介紹怎么在Android中利用IntentUtil實現一個跳轉功能的基本知識點總結和需要注意事項,具有一定的參考價值,需要的朋友可以參考一下。

Android是什么

Android是一種基于Linux內核的自由及開放源代碼的操作系統,主要使用于移動設備,如智能手機和平板電腦,由美國Google公司和開放手機聯盟領導及開發。

package com.android.chat.utils;
import java.io.File;
import java.io.Serializable;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Environment;
import android.provider.MediaStore;
import android.support.v4.app.FragmentActivity;
import android.view.View;
/**
 * @描述 intent常用工具類
 * @項目名稱 AppClient
 * @包名 com.andorid.main.basic.aboutActivity
 * @類名 IntentUtils
 */
public class IntentUtils {
  public static final int REQUEST_CODE_GALLERY = 0x11;
  public static final int REQUEST_CODE_CAMERA = 0x12;
  public final static int REQUEST_CODE_CROP = 0x13;
  /**
   * 打電話
   *
   * @param context
   * @param phoneNum
   */
  public static void call(Context context, int phoneNum) {
    Intent intent = new Intent();
    // 啟動電話程序
    intent.setAction(Intent.ACTION_CALL);
    intent.setData(Uri.parse("tel://" + phoneNum));
    context.startActivity(intent);
  }
  /**
   * 打開瀏覽器
   *
   * @param context
   * @param url
   */
  public static void openBrowser(Context context, String url) {
    Intent intent = new Intent();
    intent.setAction(Intent.ACTION_VIEW);
    intent.setData(Uri.parse(url));
    context.startActivity(intent);
  }
  /**
   * 打開圖片
   *
   * @param context
   * @param url
   */
  public static void openImage(Context context, String path) {
    Intent intent = new Intent();
    intent.setAction(Intent.ACTION_VIEW);
    // intent.setDataAndType(Uri.parse("file:///mnt/sdcard/file/1.jgp"),
    // "image/*");
    intent.setDataAndType(Uri.parse("file:///" + path), "image/*");
    context.startActivity(intent);
  }
  /**
   * 打開音頻
   *
   * @param context
   * @param url
   */
  public static void openAudio(Context context, String path) {
    Intent intent = new Intent();
    intent.setAction(Intent.ACTION_VIEW);
    intent.setDataAndType(Uri.parse("file:///" + path), "audio/*");
    context.startActivity(intent);
  }
  /**
   * 打開視頻文件
   *
   * @param context
   * @param url
   */
  public static void openVideo(Context context, String path) {
    Intent intent = new Intent();
    intent.setAction(Intent.ACTION_VIEW);
    intent.setDataAndType(Uri.parse("file:///" + path), "video/*");
    context.startActivity(intent);
  }
  /**
   * 打開系統攝像頭錄像,并保存為圖片
   *
   * @param context
   * @param path
   */
  public static void openCamera(Context context, String path) {
    Intent intent = new Intent();
    intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_OUTPUT,
        Uri.parse(Environment.getExternalStorageDirectory() + "/Videos/" + System.currentTimeMillis() + ".jpg"));
    context.startActivity(intent);
  }
  /**
   * 打開系統攝像頭錄像,并保存為視頻
   *
   * @param context
   * @param path
   */
  public static void openCamera(Context context) {
    Intent intent = new Intent();
    intent.setAction(MediaStore.ACTION_VIDEO_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_OUTPUT,
        Uri.parse(Environment.getExternalStorageDirectory() + "/Videos/" + System.currentTimeMillis() + ".mp4"));
    context.startActivity(intent);
  }
  /**
   * 分享
   */
  public static void shareApplication(Context context, String packname, String url) {
    // <action android:name="android.intent.action.SEND" />
    // <category android:name="android.intent.category.DEFAULT" />
    // <data android:mimeType="text/plain" />
    Intent intent = new Intent();
    intent.setAction("android.intent.action.SEND");
    intent.addCategory("android.intent.category.DEFAULT");
    intent.setType("text/plain");
    /*
     * intent.putExtra(Intent.EXTRA_TEXT,
     * "推薦您使用一款軟件,下載地址為:https://play.google.com/store/apps/details?id=" +
     * packname);
     */
    intent.putExtra(Intent.EXTRA_TEXT, "推薦您使用一款軟件,下載地址為:" + url + " ?id=" + packname);
    context.startActivity(intent);
  }
  /**
   * 發送對像
   *
   * @param view
   */
  public static <T extends Serializable> void sendData(Context context, T t) {
    Intent intent = new Intent(context, t.getClass());
    intent.putExtra(t.getClass().getSimpleName(), t);// 要傳遞對像,對像必須是經過序列化的
    context.startActivity(intent);
  }
  /**
   * 獲取對像
   *
   * @param view
   */
  public static <T extends Serializable> T getData(Activity context, View view) {
    return (T) context.getIntent().getSerializableExtra("account");
  }
  /**
   * 安裝文件s
   *
   * @param context
   * @param apkFile
   */
  public static void installApp(Context context, File apkFile) {
    Intent intent = new Intent();
    intent.setAction("android.intent.action.VIEW");
    intent.addCategory("android.intent.category.DEFAULT");
    intent.setDataAndType(Uri.fromFile(apkFile), "application/vnd.android.package-archive");
    context.startActivity(intent);
  }
  /**
   * 卸載
   *
   * @param context
   * @param apkFile
   */
  public static void unInstallApp(Context context, File apkFile) {
    Uri packageURI = Uri.parse("package:com.andorid.main");
    Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);
    context.startActivity(uninstallIntent);
  }
  /**
   * 獲得裁剪的圖片從圖片集合里
   * @param context
   * @param sdcardTempFile
   * @param crop
   */
  public static void getimageFromGallery(Activity context, File sdcardTempFile, int crop) {
    Intent intent = new Intent("android.intent.action.PICK");
    intent.setDataAndType(MediaStore.Images.Media.INTERNAL_CONTENT_URI, "image/*");
    intent.putExtra("output", Uri.fromFile(sdcardTempFile));
    intent.putExtra("crop", "true");
    intent.putExtra("aspectX", 1);// 裁剪框 intent.putExtra("aspectY", 1);
    intent.putExtra("outputX", crop);// 輸出圖片大小
    intent.putExtra("outputY", crop);
    context.startActivityForResult(intent, REQUEST_CODE_GALLERY);
  }
  /**
   * 獲得裁剪的圖片從Camera里
   * @param context
   * @param sdcardTempFile
   * @param crop
   */
  public static void getimageFromCamera(Activity context, File sdcardTempFile, int crop) {
    Uri uri = Uri.fromFile(sdcardTempFile);
    Intent intent = new Intent("com.android.camera.action.CROP");
    intent.setDataAndType(uri, "image/*");
    intent.putExtra("output", uri);
    intent.putExtra("crop", "true");
    intent.putExtra("aspectX", 1);// 裁剪框比?? intent.putExtra("aspectY",
                    // 1);
    intent.putExtra("outputX", crop);// 輸出圖片大小
    intent.putExtra("outputY", crop);
    context.startActivityForResult(intent, REQUEST_CODE_CROP);
  }
  /**
   * 獲得裁剪的圖片從攝像頭
   * @param context
   * @param sdcardTempFile
   * @param crop
   */
  public static void getImageFromCamera(Activity context, File sdcardTempFile) {
    Uri uri = Uri.fromFile(sdcardTempFile);
    Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
    intent.putExtra("output", uri);
    context.startActivityForResult(intent, REQUEST_CODE_CAMERA);
  }
}

以上就是小編為大家帶來的怎么在Android中利用IntentUtil實現一個跳轉功能的全部內容了,希望大家多多支持億速云!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

柳州市| 万全县| 永康市| 闽清县| 阜新市| 新疆| 灵璧县| 额济纳旗| 漾濞| 集安市| 漯河市| 拜城县| 大同市| 苍山县| 山东省| 从江县| 买车| 新竹县| 青河县| 裕民县| 贡嘎县| 思南县| 衡南县| 神农架林区| 确山县| 洪泽县| 尼玛县| 东乡县| 巴林左旗| 泽库县| 庆云县| 白水县| 马山县| 和平区| 庆元县| 舟曲县| 永春县| 灵川县| 萨迦县| 鹿泉市| 廉江市|