> >

ShareREC for Cocos2d-x用于Cocos2d-x平台上的屏幕录制

1、集成步骤

1、下载最新版本ShareRec for Cocos2d-x的SDK,解压以后复制ShareREC目录下的文件到您的项目根目录中覆盖

2、修改“Android.mk”文件,在其中添加ShareREC的源文件:

LOCAL_SRC_FILES := <其他源文件> \
                   ../../Classes/ShareRec/Android/sharerec_for_cocos2d.cpp

3、修改“AndroidManifest.xml”文件,在其中添加ShareREC的权限和activity:

<!-- 添加必要的权限 -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />

<application>
    <!-- 其它的activity -->

    <!-- ShareRec的activity -->
    <activity
            android:name="com.mob.tools.MobUIShell"
            android:configChanges="keyboardHidden|orientation|screenSize"
            android:theme="@android:style/Theme.Translucent.NoTitleBar"
            android:windowSoftInputMode="stateHidden|adjustResize" />
</application>

2、添加代码

1、填写Appkey。打开您游戏执行的Cocos2dxActivity,修改其onCreateView方法为:

public Cocos2dxGLSurfaceView onCreateView() {
    return Cocos2DRecorder.getCocos2dxGLSurfaceView("<您的AppKey>", "<您的AppSecret>");
}

2、在AppDelegate::applicationDidFinishLaunching中对ShareREC初始化配置,如:

// 设置视频的最大尺寸
ShareRec::setMaxFrameSize(ShareRec::LEVEL_1280_720);
// 设置视频的质量(低、中、高)
ShareRec::setVideoQuality(ShareRec::LEVEL_MEDIUN);
// 设置视频的最短时长
ShareRec::setMinDuration(10 * 1000));
// 设置视频的输出路径
ShareRec::setCacheFolder("/sdcard/ShareREC/cocos2dx");
// 强制使用软件编码器对视频进行编码(软件编码器兼容性更高)
ShareRec::setForceSoftwareEncoding(true, true);

这些配置是可选的,如果不进行设置,则采用默认配置。

3、在启动视频录制前,需要先判断目标设备是否已被ShareRec支持:

ShareRec::isAvailable();

此函数将返回一个bool结果,true则表示支持,否则为不支持。

4、启动、暂停、恢复和停止录制的函数分别为:

// 启动录制
ShareRec::startRecorder();

// 暂停录制
ShareRec::pauseRecorder();

// 恢复录制
ShareRec::resumeRecorder();

// 停止录制
ShareRec::stopRecorder();

3、其它配置

1、录制结束后,您可以调用下面的函数上传和分享您的视频:

ShareRec::showShare();

2、在分享前您还可以使用下面的函数为您的视频设置简短描述:

// 设置描述
ShareRec::setText("<视频描述>");

// 根据自定义字段添加描述
ShareRec::addCustomAttr("<字段名称>", "<字段数值>");

setText的优先级高于addCustomAttr,因此一旦两者都调用,后者将不起作用。

3、除了进入分享页面,您还可以在非录制期间进入个人资料页面和应用视频列表页面:

// 进入个人资料页面
ShareRec::showProfile();

// 进入应用视频列表页面
ShareRec::showVideoCenter();

4、注意事项

1、ShareRec的分享功能基于ShareSDK,如果您需要自定义分享功能,可以参考ShareSDK的相关文档进行定制

2、ShareRec的短信验证功能基于SMSSDK,如果您需要自定义此模块,可以参考SMSSDK的相关文档

3、ShareRec只能在Android 4.0.4(或Level 14)以上的系统运行

4、ShareRec需要联网