zoukankan      html  css  js  c++  java
  • Android新浪微博分享

    Android开发过程中,很多时候,我们都需要为我们的软件添加一个微博分享的功能。

    今天,我们就尝试为我们的软件添加一个微博分享的功能。

    第一步:去新浪微博官方申请AppKey,此部分不是今天的内容,请自行百度或Google。

    第二步:下载新浪提供的jar包。我们下载回来的SDK目录是这样的

    我们需要的是weibo.sdk.android.sso目录下的weibo.sdk.android.sso.jar

    第三步:开始我们的开发路程。

    1)  新建一个Android项目

    2) 将weibo.sdk.android.sso.jar拷贝到libs目录里,Eclipse会自动添加到Build Path路径里,不需要我们再手动添加

    3)  接下来,编写代码

    MainActivity.java关键代码

    Weibo mWeibo = Weibo.getInstance(CONSUMER_KEY, REDIRECT_URL);

    //请替换为自己的AppKey和Redirect_url

    mWeibo.authorize(MainActivity.this, new AuthDialogListener());

    class AuthDialogListener implements WeiboAuthListener {

    @Override

    public void onComplete(Bundle values) {

    String token = values.getString("access_token");

    String expires_in = values.getString("expires_in");

    editor = pre.edit();

    editor.putString("token", token);

    editor.putString("expires_in", expires_in);

    editor.commit();

    }

    @Override

    public void onWeiboException(WeiboException e) {

    Toast.makeText(getApplicationContext(),

    "Auth exception : " + e.getMessage(), Toast.LENGTH_LONG)

    .show();

    }

    @Override

    public void onError(WeiboDialogError e) {

    Toast.makeText(getApplicationContext(),

    "Auth error : " + e.getMessage(), Toast.LENGTH_LONG).show();

    }

    @Override

    public void onCancel() {

    Toast.makeText(getApplicationContext(), "Auth cancel : ",

    Toast.LENGTH_LONG).show();

    }

    }

    ShareAct.java关键代码

    access_token = new Oauth2AccessToken(pre.getString("token", ""),

    pre.getString("expires_in", "0"));

    StatusesAPI api = new StatusesAPI(access_token);

    /**

    * upload(String content, String file, String lat, String lon, RequestListener listener)

    * content为要分享的内容

    * file为要分享图片路径

    * lat和lng为经纬度,可根据自己的需要设置

    * listener为监听器,用于监听发布结果

    */

    api.upload(et1.getText().toString(), "mnt/sdcard/pic1.jpg","o", "o", this);

    4)  最后,请不要忘记添加权限。

    <uses-permission android:name="android.permission.INTERNET" />

    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>

    <uses-permission android:name="android.permission.WRITE_APN_SETTINGS"/>

       <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

    5)  运行,大功告成。

  • 相关阅读:
    QMainWindow透明背景
    在Xcode中产看QString的数据
    使用QtConcurrent在线程池中执行网络操作
    QThread和QObject的调用方法总结
    策略模式 C++实现
    【转】单元测试要做多细?
    Mac系统添加QQ邮箱帐号提示无法验证
    Qt半透明对话框
    SVD的几何意义,以及在去噪,推荐系统中的应用
    BP神经网络原理及python实现
  • 原文地址:https://www.cnblogs.com/mingliangzhai/p/2938767.html
Copyright © 2011-2022 走看看