Android Cocos2d-x游戏集成友盟社会化组件分享功能
最近在帮助开发者集成友盟社会化组件的过程中,发现游戏的集成过程遇到一些困难,而Cocos2d-x具有较好的代表性,因此整理了一篇关于Android Cocos2d-x游戏集成友盟社会化组件指南,由于本人水平有限,有什么错误或者有更好的方法希望大家指出,以帮助其他开发者更好的集成。 友盟社会化组件需要依赖于Activity,因此需要在你Cocos2d-x游戏的Activity ( 集成自Cocos2dActivity )中进行调用, 步骤如下 :
步骤一、在游戏Activity中定义一个静态方法, 如下示例 :
package com.umeng.game ; …... public class UmengGameActivity extends Cocos2dxActivity { /** * Handler, 用于包装友盟的openShare方法,保证openShare方法在UI线程执行 */ private static Handler mHandler = null; /** * 保存当前Activity实例, 静态变量 */ private static Activity mActivity = null; /** * 友盟Social SDK实例,整个SDK的Controller */ private static UMSocialService mController = UMServiceFactory.getUMSocialService( "com.aigcar", RequestType.SOCIAL); /** * onCreate方法 */ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mActivity = this; } /** * 载入cocos2d-x的c++代码,这里命名为umenggame */ static { System.loadLibrary("umenggame"); } /** * @Title: openShareBoard * @Description: * 调用友盟的openShare方法, 打开分享平台选择面板 * @throws */ public static void openShareBoard() { mHandler = new Handler(Looper.getMainLooper()); mHandler.postDelayed(new Runnable() { @Override public void run() { if (mActivity != null) { /** * 设置新浪微博、QQ空间、腾讯微博的Handler,进行SSO授权 * * 注意 : 新浪平台支持SSO则需要把友盟提供的com.sina.sso拷进src里面, * 需要将友盟提供的libs、res文件拷贝到您的工程对应的目录里面. */ mController.getConfig().setSsoHandler(new SinaSsoHandler()); mController.getConfig().setSsoHandler(new QZoneSsoHandler(mActivity)); mController.getConfig().setSsoHandler(new TencentWBSsoHandler()); // 打开友盟的分享平台选择面板 mController.openShare(mActivity, false); } } }, 100); } }
补充:移动开发 , Android ,