发送图片到会话给QQ好友和Intent本地使用

来源:互联网 发布:软件ac控制器 编辑:程序博客网 时间:2024/05/20 18:02
/** * 给QQ好友发送图片 *  * @param imagePath *            图片路径 例如:"mnt/sdcard/test.gif" */public void sendImageToQQ(String imagePath) {// 创建查询条件的intent,用于查询哪些软件的有activity支持发送Intent intent = new Intent(Intent.ACTION_SEND);intent.addCategory(Intent.CATEGORY_DEFAULT);intent.setType("image/*");// 查询所有支持的信息List<ResolveInfo> infos = getPackageManager().queryIntentActivities(intent, PackageManager.COMPONENT_ENABLED_STATE_DEFAULT);// QQ的支持发送的activity信息ActivityInfo qqInfo = null;// 循环找到QQ的for (ResolveInfo info : infos) {ActivityInfo in = info.activityInfo;if (in.packageName.equals("com.tencent.mobileqq")) { // 如果存在QQ的包名qqInfo = in;break;}}if (qqInfo != null) {// 再次设置intent,进行发送,指向QQ的这个可以发送的页面intent.setComponent(new ComponentName(qqInfo.packageName,qqInfo.name));// 设置需要发送的数据intent.putExtra(Intent.EXTRA_STREAM,Uri.fromFile(new File(imagePath)));// 进行发送startActivity(intent);}else{System.out.println("QQ没有安装");}}


以下Intent使用方式由网友总结,其中有些使用方式可参照上面例子进行使用:

/** 调用浏览器打开网页 */Intent intent = new Intent(Intent.ACTION_VIEW,Uri.parse("http://www.baidu.com"));startActivity(intent);/** 卸载软件 */intent = new Intent(Intent.ACTION_DELETE, Uri.fromParts("package","包名", null));startActivity(intent);/** 安装软件 */intent = new Intent(Intent.ACTION_PACKAGE_ADDED, Uri.fromParts("package", "包名", null));startActivity(intent);/** 打开软件 */intent = new Intent("android.intent.action.MAIN");intent.addCategory(Intent.CATEGORY_LAUNCHER);intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK| Intent.FLAG_ACTIVITY_SINGLE_TOP);ComponentName component = new ComponentName("包名", "包名.类名");intent.setComponent(component);startActivityForResult(intent, 1);/** 在市场中显示应用详细信息,可用于下载和评分 */intent = new Intent(Intent.ACTION_VIEW,Uri.parse("market://details?id=包名"));startActivity(intent);/** 在市场中搜索应用 */intent = new Intent(Intent.ACTION_VIEW,Uri.parse("market://search?q=pname:包名"));startActivity(intent);/** 打开联系人列表 */intent = new Intent(Intent.ACTION_GET_CONTENT);intent.setType("vnd.android.cursor.item/phone");startActivityForResult(intent, 1);intent = new Intent(Intent.ACTION_PICK,Uri.parse("content://contacts/people"));startActivityForResult(intent, 1);/** 拨打电话 */intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:10086"));startActivity(intent);/** 调用发短信程序 */intent = new Intent(Intent.ACTION_VIEW);intent.putExtra("sms_body", "文本信息");intent.setType("vnd.android-dir/mms-sms");startActivity(intent);/** 发送短信 */intent = new Intent(Intent.ACTION_SENDTO, Uri.parse("smsto:10086"));intent.putExtra("sms_body", "文本信息");startActivity(intent);/** 发送彩信 */intent = new Intent(Intent.ACTION_SEND);intent.putExtra("sms_body", "文本信息");intent.putExtra(Intent.EXTRA_STREAM,Uri.parse("content://media/external/images/media/23"));intent.setType("image/png");startActivity(intent);/** 播放多媒体 */intent = new Intent(Intent.ACTION_VIEW);intent.setDataAndType(Uri.parse("file:///sdcard/song.mp3"), "audio/mp3");startActivity(intent);/** 打开照相机 */intent = new Intent(Intent.ACTION_CAMERA_BUTTON);sendBroadcast(intent);/** 打开录音机 */intent = new Intent(Media.RECORD_SOUND_ACTION);startActivity(intent);/** 从gallery选取图片 */intent = new Intent(Intent.ACTION_GET_CONTENT);intent.setType("image/*");startActivityForResult(intent, 11);/** 发送Email */intent = new Intent(Intent.ACTION_SENDTO,Uri.parse("mailto:123@abc.com"));startActivity(intent);intent = new Intent(Intent.ACTION_SEND);intent.putExtra(Intent.EXTRA_EMAIL, "me@abc.com");intent.putExtra(Intent.EXTRA_TEXT, "The email body text");intent.setType("text/plain");startActivity(Intent.createChooser(intent, "选择页面标题"));intent = new Intent(Intent.ACTION_SEND);String[] tos = { "me@abc.com" };String[] ccs = { "you@abc.com" };intent.putExtra(Intent.EXTRA_EMAIL, tos);intent.putExtra(Intent.EXTRA_CC, ccs);intent.putExtra(Intent.EXTRA_TEXT, "The email body text");intent.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");intent.setType("message/rfc822");startActivity(Intent.createChooser(intent, "选择页面标题"));intent = new Intent(Intent.ACTION_SEND);intent.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");intent.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/mysong.mp3");intent.setType("audio/mp3");startActivity(Intent.createChooser(intent, "选择页面标题"));/** 显示地图 */intent = new Intent(Intent.ACTION_VIEW,Uri.parse("geo:38.899533,-77.036476"));startActivity(intent);/** 地图路径规划 */intent = new Intent(Intent.ACTION_VIEW,Uri.parse("http://maps.google.com/maps?f=dsaddr=startLat%20startLng&daddr=endLat%20endLng&hl=en"));startActivity(intent);/** 从google搜索内容 */intent = new Intent(Intent.ACTION_WEB_SEARCH);intent.putExtra(SearchManager.QUERY, "搜索关键字");startActivity(intent);


原创粉丝点击