码迷,mamicode.com
首页 > 微信 > 详细

SharePanel – Android上简单的一键分享,可分享到微信QQ和新浪微博

时间:2015-04-12 22:46:53      阅读:377      评论:0      收藏:0      [点我收藏+]

标签:android   share   dialog   

SharePanel – Android上简单的一键分享,可分享到微信QQ和新浪微博

简介

最近在写一个小程序长微博工具,效果就是编辑长微博,然后一键分享到微信、QQ和新浪微博。

一开始是想直接用Intent.createChooser(target, title)来做,后来一想,这样做不是很好啊,会有许多乱七八糟的应用弹出来,我想优先分享到微信、QQ和微博,于是找了点资料,将一键分享这个部分做成了一个开源的工具。我把这个工具叫 SharePanel。其中用来显示的部分我用了我前段时间写的一个开源的控件ExpandDialog。你可一看我以前的一篇博客


效果图

技术分享

代码块

以下是部分代码块:

    /**
     * 判断是否安装腾讯、新浪等指定的分享应用
     * @param context 上下文
     * @param packageName 应用的包名
     * @return 安装了则返回true,没安装返回false;
     */
    public static boolean checkInstallation(Context context , String packageName) {
        boolean isInstall = false;
        try {
            context.getPackageManager().getPackageInfo(packageName, PackageManager.GET_ACTIVITIES);
            isInstall = true;
        } catch (NameNotFoundException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return isInstall;
    }
    /**
     * 通过ComponentName过滤,得到指定的Activity,用此ACtivity来分享图片
     * @param activity 指定的Activity
     * @param imageUri 图片的Uri
     * @return
     */
    public static Intent getImageShareIntent( ComponentName activity , Uri imageUri ) {
        Intent shareIntent = new Intent(Intent.ACTION_SEND);
        shareIntent.addCategory(Intent.CATEGORY_DEFAULT);
        shareIntent.setComponent(activity);
        shareIntent.setType("image/*");
        shareIntent.putExtra(Intent.EXTRA_STREAM, imageUri);
        return shareIntent;
    }
    /**
     * 通过ComponentName过滤,得到指定的Activity,用此ACtivity来分享文字
     * @param activity 指定的Activity
     * @param msg 图片的Uri
     * @return
     */
    public static Intent getTextShareIntent( ComponentName activity , String msg ) {
        Intent shareIntent = new Intent(Intent.ACTION_SEND);
        shareIntent.addCategory(Intent.CATEGORY_DEFAULT);
        shareIntent.setComponent(activity);
        shareIntent.setType("text/plain");
        shareIntent.putExtra(Intent.EXTRA_TEXT, msg);
        return shareIntent;
    }

SharePanel – Android上简单的一键分享,可分享到微信QQ和新浪微博

标签:android   share   dialog   

原文地址:http://blog.csdn.net/wxy318/article/details/45014745

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!