最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android開發(fā)實現(xiàn)的IntentUtil跳轉(zhuǎn)多功能工具類【包含視頻、音頻、圖片、攝像頭等操作功能】

 更新時間:2017年11月08日 09:00:45   作者:LovooGod  
這篇文章主要介紹了Android開發(fā)實現(xiàn)的IntentUtil跳轉(zhuǎn)多功能工具類,該封裝類還包含視頻、音頻、圖片、攝像頭等操作功能,需要的朋友可以參考下

本文實例講述了Android開發(fā)實現(xiàn)的IntentUtil跳轉(zhuǎn)多功能工具類。分享給大家供大家參考,具體如下:

說明:此工具類是本人開發(fā)中總結(jié)下來的,還有其它的跳轉(zhuǎn)親給我留言,希望大家一起把這個工具類打造成最全的跳轉(zhuǎn)工具,謝謝!

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
 * @author chenlin
 * @date 2012年6月25日 上午8:08:55
 * @version 1.0
 */
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);
  }
  /**
   * 打開系統(tǒng)攝像頭錄像,并保存為圖片
   *
   * @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);
  }
  /**
   * 打開系統(tǒng)攝像頭錄像,并保存為視頻
   *
   * @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);
  }
  /**
   * 發(fā)送對像
   *
   * @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);// 要傳遞對像,對像必須是經(jīng)過序列化的
    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);
  }
}

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進(jìn)階教程》、《Android多媒體操作技巧匯總(音頻,視頻,錄音等)》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android操作json格式數(shù)據(jù)技巧總結(jié)》、《Android資源操作技巧匯總》及《Android控件用法總結(jié)

希望本文所述對大家Android程序設(shè)計有所幫助。

相關(guān)文章

  • android 關(guān)于利用簽名的SHA1進(jìn)行安全校驗的方法之一(推薦)

    android 關(guān)于利用簽名的SHA1進(jìn)行安全校驗的方法之一(推薦)

    下面小編就為大家?guī)硪黄猘ndroid 關(guān)于利用簽名的SHA1進(jìn)行安全校驗的方法之一(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • Android實現(xiàn)拍照功能

    Android實現(xiàn)拍照功能

    這篇文章主要為大家詳細(xì)介紹了Android實現(xiàn)拍照功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • Android為應(yīng)用添加數(shù)字角標(biāo)的簡單實現(xiàn)

    Android為應(yīng)用添加數(shù)字角標(biāo)的簡單實現(xiàn)

    應(yīng)用的角標(biāo)是用來標(biāo)記有多少條提醒沒讀,本篇文章主要介紹了Android為應(yīng)用添加角標(biāo)的簡單實現(xiàn),有興趣的可以了解一下。
    2017-04-04
  • Android實現(xiàn)水波紋效果

    Android實現(xiàn)水波紋效果

    這篇文章主要介紹了Android實現(xiàn)水波紋效果的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-10-10
  • Android中標(biāo)簽容器控件的實例詳解

    Android中標(biāo)簽容器控件的實例詳解

    在Android開發(fā)過程中,常常會遇到這樣的場景:我們展示一種物品或者為某一事物添加一些標(biāo)簽。比如說,我們買一件衣服,可以有以下幾種標(biāo)簽:杰克瓊斯,男士,運(yùn)動等等。本文將實例介紹Android中標(biāo)簽容器控件的實現(xiàn)過程。
    2016-07-07
  • Android實現(xiàn)跨進(jìn)程接口回掉的方法

    Android實現(xiàn)跨進(jìn)程接口回掉的方法

    這篇文章主要給大家介紹了關(guān)于Android如何實現(xiàn)跨進(jìn)程接口回掉的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對各位Android開發(fā)者們具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Android5.0新控件實例詳解

    Android5.0新控件實例詳解

    谷歌在推出Android5.0的同時推出了一些新控件,Android5.0中最常用的新控件有下面5種。具體哪五種大家通過本文學(xué)習(xí)下
    2018-02-02
  • 兩個surfaceView實現(xiàn)切換效果

    兩個surfaceView實現(xiàn)切換效果

    這篇文章主要為大家詳細(xì)介紹了兩個surfaceView實現(xiàn)切換效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • Android中Retrofit庫的高級使用與原理

    Android中Retrofit庫的高級使用與原理

    在 Android 開發(fā)中,網(wǎng)絡(luò)請求是一個極為關(guān)鍵的部分,Retrofit 作為一個強(qiáng)大的網(wǎng)絡(luò)請求庫,能夠簡化開發(fā)流程,提供高效的網(wǎng)絡(luò)請求能力,本文將深入介紹 Retrofit 的高級使用與原理,幫助讀者更全面地理解和應(yīng)用這一庫,需要的朋友可以參考下
    2023-08-08
  • Android編程中的5種數(shù)據(jù)存儲方式

    Android編程中的5種數(shù)據(jù)存儲方式

    這篇文章主要介紹了Android編程中的5種數(shù)據(jù)存儲方式,結(jié)合實例形式詳細(xì)分析了Android實現(xiàn)數(shù)據(jù)存儲的5中實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-12-12

最新評論

兴海县| 井冈山市| 永靖县| 富平县| 尼勒克县| 西充县| 玉田县| 长春市| 方城县| 丰原市| 海盐县| 瓦房店市| 甘南县| 上饶县| 隆安县| 绥德县| 苏尼特左旗| 康定县| 铜川市| 崇文区| 静海县| 乌拉特中旗| 拜城县| 娄烦县| 黄骅市| 扎囊县| 昭平县| 获嘉县| 苍山县| 卫辉市| 兴安盟| 班玛县| 延津县| 济南市| 台北市| 平邑县| 巴彦淖尔市| 岳池县| 沈丘县| 靖江市| 浑源县|