本文实例讲述了Android开发实现的IntentUtil跳转多功能工具类。分享给大家供大家参考,具体如下:
说明:此工具类是本人开发中总结下来的,还有其它的跳转亲给我留言,希望大家一起把这个工具类打造成最全的跳转工具,谢谢!
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); } /** * 打开系统摄像头录像,并保存为图片 * * @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相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android操作json格式数据技巧总结》、《Android资源操作技巧汇总》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
本文向大家介绍iOS开发实现音频播放功能,包括了iOS开发实现音频播放功能的使用技巧和注意事项,需要的朋友参考一下 音频播放 1、介绍 - 功能介绍 用于播放比较长的音频、说明、音乐 ,使用到的是AVFoundation - 框架介绍 * AVAudioPlayer * 初始化: 注意 : (3)必须声明全局变量的音乐播放对象、或者是属性的音乐播放对象 才可以播放 (4)在退出播放页
本文向大家介绍python+opencv打开摄像头,保存视频、拍照功能的实现方法,包括了python+opencv打开摄像头,保存视频、拍照功能的实现方法的使用技巧和注意事项,需要的朋友参考一下 以下代码是保存视频 以下代码是拍照,在按q之后,保存图片并退出。 以上这篇python+opencv打开摄像头,保存视频、拍照功能的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家
本文向大家介绍Thinkphp5框架实现图片、音频和视频文件的上传功能详解,包括了Thinkphp5框架实现图片、音频和视频文件的上传功能详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Thinkphp5框架实现图片、音频和视频文件的上传功能。分享给大家供大家参考,具体如下: 首先是同步上传,最为基础的上传的方式,点击表单提交之后跳转那种。如下前端代码 注意这里的enctype必须en
本文向大家介绍Vue2.0实现调用摄像头进行拍照功能 exif.js实现图片上传功能,包括了Vue2.0实现调用摄像头进行拍照功能 exif.js实现图片上传功能的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Vue2.0实现调用摄像头进行拍照功能的具体代码,以及图片上传功能引用exif.js,供大家参考,具体内容如下 可以在github 上下载demo链接 vue组件代码 引用的e
本文向大家介绍Android 自定义ListView实现QQ空间界面(说说内包含图片、视频、点赞、评论、转发功能),包括了Android 自定义ListView实现QQ空间界面(说说内包含图片、视频、点赞、评论、转发功能)的使用技巧和注意事项,需要的朋友参考一下 前端时间刚好需要做一个类似于QQ空间的社区分享功能,说说内容包含文字(话题、内容)、视频、图片,还需包含点赞,评论,位置信息等功能。 就
一个播放器功能,现在需求将视频播放修改为播放图片。 我试过直接替换路径,但是图片加载需要时间,有些时候就会在图片还没有加载完成就调到下一章图片了,出现黑屏现象,因此需要图片提前加载几张才行,有什么方法可以解觉这个问题,或者有什么开源组件可以实现播放图片的功能