Cocos2d-x   发布时间:2022-05-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了cocos2d手游之微信分享SDK接入指南大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

一、微信分享SDK介绍

注:本文为微信Android终端开发工具的新手使用教程,只涉及教授SDK的使用方法,默认读者已经熟悉IDE的基本使用方法(本文以Eclipse为例),以及具有一定的编程知识基础等。


1.申请你的AppID
请到 开发者应用登记页面 进行登记,登记并选择移动应用进行设置后,将该应用提交审核,只有审核通过的应用才能进行开发。

2.下载微信终端开发工具包
开发工具包主要包含3部分内容:(其中,只有libAMMsdk.jar是必须的)
- libAMMsdk.jar(每个第三方应用必须要导入该sdk库,用于实现与微信的通信)
- API文档(供开发者查阅使用)
- 界面小工具源码(封装了界面表现的工具类,以及一些界面风格)
请前往“资源下载页”下载最新SDK包

3. 把下载下来的libmAMMsdk.jar直接拖入到安卓根目录的libs文件夹内

二、操作步骤

1. 配置AndroidManifest.xml,添加必要的权限支持,如下:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 
<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

2. 注册到微信

要使你的程序启动后微信终端能响应你的程序,必须在代码中向微信终端注册你的id。

IWXAPI api = WXAPIFactory.createWXAPI(this,WXEntryActivity.APP_ID);
api.registerApp(WXEntryActivity.APP_ID);
api.handleIntent(geTintent(),this);

3. 发送图片

在这之前,由于微信4.2以下版本不支持发送到朋友圈,所以有个检测是否能否发送到朋友圈的方法

private static Boolean checkCanSendToFriend(IWXAPI api){
		int wxSdkVersion = api.getWXAppSupportAPI();
		if (wxSdkVersion >= TIMELINE_SUPPORTED_VERSION) {
			return true;
		} else {
			return false;
		}
	}

另外一个微信自带的生成唯一标识函数
 private static String buildtransaction(final String typE) {
		return (type == null) ? String.valueOf(System.currentTimeMillis()) : type + System.currentTimeMillis();
	}



  //api:IWXAPI的一个实例,已注册到app,mode:发送模式(0为聊天,1为发到朋友圈),smallPng:(缩略图绝对路径),bigPng(大图绝对路径)
  public static void sendImageWithAPI(IWXAPI api,int mode,String smallPng,String bigPng){
    	Log.i("wc","smallPng:" + smallPng + " bigPng:" + bigPng);
    	Bitmap bmpsmall = BitmapFactory.decodeFile(smallPng);
    	Bitmap bmpBig = BitmapFactory.decodeFile(bigPng);
    	if(bmpsmall == null){
    		Log.i("wc","bmp is null");
    		//Toast.makeText(activity,"image path not find,path:" + smallPng,Toast.LENGTH_LONG).show();
    		return;
    	}
    	if(bmpBig == null){
    		Log.i("wc",path:" + bigPng,Toast.LENGTH_LONG).show();
    		return;
    	}
    	
    	WXImageObject imgObj = new WXImageObject(bmpBig);
		
		WXMediamessage msg = new WXMediamessage();
		msg.mediaObject = imgObj;
		
		msg.thumbData = Util.bR_947_11845@pToByteArray(bmpsmall,truE);  // 设置缩略图

		SendmessageToWX.Req req = new SendmessageToWX.Req();
		req.transaction = buildtransaction("img");
		req.message = msg;
		
		//聊天
		if(mode == 0){
			req.scene = SendmessageToWX.Req.WXScenesession;
		}
		//朋友圈
		else if((mode == 1) && (checkCanSendToFriend(api)))
		{
			req.scene = SendmessageToWX.Req.WXSceneTimeline;
		}
		else{
			req.scene = SendmessageToWX.Req.WXScenesession;
		}

		api.sendReq(req);
		Log.i("wc","send img ok");
    }

4. 发送图片链接
//api:IWXAPI的实例,png:图片路径,title:标题,desc:描述,url:链接地址,mode:模式(0聊天1朋友圈)
public static void sendURLWithAPI(IWXAPI api,String png,String title,String 
    		desc,String url,int mode)
    {	
    	Bitmap bmp = BitmapFactory.decodeFile(png);
    	
    	if(bmp == null){
    		//Toast.makeText(activity,path:" + png,Toast.LENGTH_LONG).show();
    		return;
    	}
    	
    	WXWebpageObject webpage = new WXWebpageObject();
		webpage.webpageUrl = url;
		WXMediamessage msg = new WXMediamessage(webpagE);
		msg.title = title;
		msg.description =  desc;
		Bitmap thumb = bmp;
		msg.thumbData = Util.bR_947_11845@pToByteArray(thumb,truE);
		
		SendmessageToWX.Req req = new SendmessageToWX.Req();
		req.transaction = buildtransaction("webpage");
		req.message = msg;

		//聊天
		if(mode == 0){
			req.scene = SendmessageToWX.Req.WXScenesession;
		}
		//朋友圈
		else if((mode == 1) && (checkCanSendToFriend(api)))
		{
			req.scene = SendmessageToWX.Req.WXSceneTimeline;
		}
		else{
			req.scene = SendmessageToWX.Req.WXScenesession;
		}
				
		api.sendReq(req);
    }


至此,所有关键要素都已经说明,如果需要原码,请点击查看http://www.voidcn.com/article/p-kngrlkpy-bdv.html

大佬总结

以上是大佬教程为你收集整理的cocos2d手游之微信分享SDK接入指南全部内容,希望文章能够帮你解决cocos2d手游之微信分享SDK接入指南所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。