新浪微博分享功能的简单实现

  在自己的应用中添加微博分享功能很早之前都有想做了,最先的想法是做一个二维码扫描,然后将扫描结果直接分享到微博上面,结果前一段时间做了二维码的扫描后搁置了一段时间,就把微博分享这东西拖到了现在。

  新浪微博分享可以通过三个方式完成:

    1.从第三方应用唤起微博客户端进行分享

    2.从微博客户端唤起第三方应用进行分享

    3.使用OpenAPI进行分享

  这三个方法各有各好处,也各有各缺点。对于刚开始研究微博SDK来说,先从简单的做起比较容易入手,这里我就采用了第一种方式来实现分享功能。整个应用实现起来很简单,先放置一个EditText控件接收用户输入的分享内容,接着放置一个Button按钮并监听其OnClick事件,在事件中实例化一个Intent,设置传递的数据为用户在EditText中输入的内容。当用户输入完毕,并点击分享按钮,系统弹出拥有分享功能的通讯软件,选择新浪微博客户端(该方法的实现必要要求用户设备已经安装微博客户端),再点击发送,无须跳转到客户端界面即可发送微博。

  部分源码如下:

  

Button share=(Button)findViewById(R.id.myButton1);
        final EditText text=(EditText)findViewById(R.id.myText1);//将text对象设置为final类型
        share.setOnClickListener(new OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent intent=new Intent(Intent.ACTION_SEND);
                intent.setType("image/*");
                intent.putExtra(Intent.EXTRA_SUBJECT, "Share");
                intent.putExtra(Intent.EXTRA_TEXT, text.getText().toString());
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
                startActivity(Intent.createChooser(intent, getTitle()));
            }
        });

  效果图如下:

  点击分享按钮,跳出具有窗口选择微博客户端:

  跳转到微博发送界面,微博内容自动填充为用户在第三方应用输入的内容。

  使用微博客户端检查微博发送情况:

  总结:毕业回家也有差不多一个月了,前几天开始着手工作的事就想到把这个很久之前的想法给做出来,给了自己三天的期限,现在是凌晨一点过一点,对自己来说,也算是完成了目标吧。ps:新浪微博提供的官方SDK开发文档和demo都不太好用,开发文档里面就20页内容,设计了所有的新浪微博可以开发的内容,所以每个部分都是点到即止,有些东西甚至都没出现过。开发文档依靠不上,就想着去读源码,可源码读几遍下来也是一头雾水,一方面,源码有点多,另一方面,感觉有点乱,反正感觉读起来很不顺,也许是理解力问题吧。不管了,慢慢来吧,后期再去研究下使用OpenAPI来实现分享功能。

原文地址:https://www.cnblogs.com/dream550/p/3847816.html