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

Android应用加入微信分享

jsc10年前 (2016-04-01)Android3079

一、申请你的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中AsyncTask的简单用法

Android中AsyncTask的简单用法

        在开发Android移动客户端的时候往往要使用多线程来进行操作,我们通常会将耗时的操作放在单独的线程执行,避免其占用主线程而给用户带来不好 的用户体验。但是在子线程中无法去操作主线程(UI 线...

Android中使用PULL方式解析XML文件

Android中使用PULL方式解析XML文件

 Pull解析器的运行方式与 SAX 解析器相似。它提供了类似的事件,如:开始元素和结束元素事件,使用parser.next()可以进入下一个元素 并触发相应事件。跟SAX不同的是, Pull解析器产生的事件是一个数字,而非方法,因此可以使用一个s...

EditText焦点

<LinearLayout          style="@style/FillWrapWidgetStyle"      &n...

Android中从SD卡中/拍照选择图片并进行剪裁的方法

Android中从SD卡中/拍照选择图片并进行剪裁的方法

效果图: 下面是代码的部分,部分是从网路上摘录的,自己整理后当做工具类使用   配置文件:布局很简单,一个ImageButton和一个Button,点击都可以实现图像选择的功能,具体的实现根据大家在实际中...

修改keystore密码别名等

修改keystore密码别名等

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

Android开发之资源文件存储

在android开发中,资源文件是我们使用频率最高的,无论是string,drawable,还是layout,这些资源都是我们经常使用到的,而且为我们的开始提供很多方便,不过我们平时接触的资源目录一般都是下面这三个。        /res...