当前位置:首页 > Android > 正文内容

Android应用加入微信分享

jsc9年前 (2016-04-01)Android2870

一、申请你的AppID

http://open.weixin.qq.com/

  友情提示:推荐使用eclipse打包软件最后一步的MD5值去申请AppID

二、官网下载libammsdk.jar包

http://open.weixin.qq.com/download/?lang=zh_CN

三、将libammsdk.jar复制到工程的libs目录

QQ截图20160401143611.png

四、在需要分享的Activity编写代码

private IWXAPI wxApi;  
//实例化  
wxApi = WXAPIFactory.createWXAPI(this, Constants.WX_APP_ID);  
wxApi.registerApp(Constants.WX_APP_ID);  
/** 
 * 微信分享 (这里仅提供一个分享网页的示例,其它请参看官网示例代码) 
 * @param flag(0:分享到微信好友,1:分享到微信朋友圈) 
 */  
private void wechatShare(int flag){  
    WXWebpageObject webpage = new WXWebpageObject();  
    webpage.webpageUrl = "这里填写链接url";  
    WXMediaMessage msg = new WXMediaMessage(webpage);  
    msg.title = "这里填写标题";  
    msg.description = "这里填写内容";  
    //这里替换一张自己工程里的图片资源  
    Bitmap thumb = BitmapFactory.decodeResource(getResources(), R.drawable.share_logo);  
    msg.setThumbImage(thumb);  
      
    SendMessageToWX.Req req = new SendMessageToWX.Req();  
    req.transaction = String.valueOf(System.currentTimeMillis());  
    req.message = msg;  
    req.scene = flag==0?SendMessageToWX.Req.WXSceneSession:SendMessageToWX.Req.WXSceneTimeline;  
    wxApi.sendReq(req);  
}  
//在需要分享的地方添加代码:  
wechatShare(0);//分享到微信好友  
wechatShare(1);//分享到微信朋友圈

五、在你的包名相应目录下新建一个wxapi目录,并在该wxapi目录下新增一个WXEntryActivity类,该类继承自Activity,实现IWXAPIEventHandler接口

是是是.png

/** 微信客户端回调activity示例 */  
public class WXEntryActivity extends Activity implements IWXAPIEventHandler {  
    // IWXAPI 是第三方app和微信通信的openapi接口  
    private IWXAPI api;  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        api = WXAPIFactory.createWXAPI(this, "这里替换第一步申请的APP_ID", false);  
        api.handleIntent(getIntent(), this);  
        super.onCreate(savedInstanceState);  
    }  
    @Override  
    public void onReq(BaseReq arg0) { }  
  
    @Override  
    public void onResp(BaseResp resp) {  
        LogManager.show(TAG, "resp.errCode:" + resp.errCode + ",resp.errStr:"  
                + resp.errStr, 1);  
        switch (resp.errCode) {  
        case BaseResp.ErrCode.ERR_OK:  
            //分享成功  
            break;  
        case BaseResp.ErrCode.ERR_USER_CANCEL:  
            //分享取消  
            break;  
        case BaseResp.ErrCode.ERR_AUTH_DENIED:  
            //分享拒绝  
            break;  
        }  
    }  
}

六、配置清单文件AndroidManifest.xml

<activity    
    android:name=".wxapi.WXEntryActivity"  
    android:exported="true"  
    android:screenOrientation="portrait"   
    android:theme="@android:style/Theme.Translucent.NoTitleBar" />

七、签名打包软件,然后可以测试了


扫描二维码推送至手机访问。

版权声明:本文由微小站发布,如需转载请注明出处。

本文链接:https://www.jsc0.com/post/51.html

标签: 微信分享
分享给朋友:

“Android应用加入微信分享” 的相关文章

Android Location在GPS中的应用(二)

这一篇其实跟GPS 毫无关系。 继续上一篇的内容,讲GPS以外的东西,比如说Service的使用。比如说gps监控,它并不需要任何UI,在后台默默地运行就行。为什么不做成 Service呢?悄悄地向服务器发送用户的位置坐标是一个不错的想法,因为它完全不需要用户的干预。当然为了保留用户权利,我们应当留...

Android基本功:支持GPS的核心API

一、LocationManager类        作用和TelephonyManager,AudioManager等服务类的作用类似,所有GPS定位相关的服务、对象都由该对象产生;    ...

Android动态布局,并动态为TextView控件设置drawableLeft、drawableRight等属性添加图标

Android动态布局,并动态为TextView控件设置drawableLeft、drawableRight等属性添加图标

注:(图中每一个条目和图标都是由代码动态生成) 代码动态布局,并需要为每一个条目设置图标,此时用到了 android:drawableLeft="@drawable/icon" ...

下拉刷新及滚动到底部加载更多的Listview使用

下拉刷新及滚动到底部加载更多的Listview使用

本文主要介绍可同时实现下拉刷新及滑动到底部加载更多的ListView的使用。 该ListView优点包括:a. 可自定义下拉响应事件(如下拉刷新)  b.可自定义滚动到底部响应的事件(如滑动到底部加载更多)  c.可自定义丰富的样式  d....

修改keystore密码别名等

修改keystore密码别名等

之前在测试Eclipse ADT的Custom debug keystore自定义调试证书的时候,发过一篇关于调试证书规格的博文:Eclipse ADT的Custom debug keystore所需证书规格,提到过自定义调试证书的密码和alias命名以及alias密码都是...

onTextChanged参数解释及实现EditText字数监听

由于最近做项目要检测EditText中输入的字数长度,从而接触到了Android中EditText的监听接口,TextWatcher。它有三个成员方法,第一个after很简单,这个方法就是在EditText内容已经改变之后调用,重点看下面两个方法:beforeTextChanged(CharSequ...