creator2.0.2 native游戏截屏微信分享

cocos creator 2.0.2后 游戏内截屏,native微信SDK分享代码:
public static wxShareScreenShot(sType: number) {
  let node = new cc.Node();
  node.parent = cc.director.getScene();
  node.width = cc.view.getVisibleSize().width;
  node.x = cc.view.getVisibleSize().height;
  node.y = cc.view.getVisibleSize().width;
  node.height = cc.view.getVisibleSize().height;
  let camera = node.addComponent(cc.Camera);
  camera.cullingMask = 0xffffffff;
  let texture = new cc.RenderTexture();
  texture.initWithSize(node.width, node.height);
  camera.targetTexture = texture;
  camera.render(null);
  let data = texture.readPixels();
  let width = texture.width;
  let height = texture.height;
  data = this.filpYImage(data, width, height)
  let fileName = "result_share.jpg";
  let fullPath = jsb.fileUtils.getWritablePath() + fileName;
  if (jsb.fileUtils.isFileExist(fullPath)) {
    jsb.fileUtils.removeFile(fullPath);
  }
  let success = jsb.saveImageData(data, width, height, fullPath);
  if (success) {
    if(this.isAndroid){  
      jsb.reflection.callStaticMethod("org/cocos2dx/javascript/AppActivity", "shareScreenShot","(Ljava/lang/String;Ljava/lang/String;)V",fullPath,sType.toString())
  }
  if (this.isIOS){
    jsb.reflection.callStaticMethod("VXManager", "shareScreenShot:" , sType.toString());
  }
  camera.destroy();
  texture.destroy();
  }
}

相关文章