提交 b115f927 作者: 王进

新版SDK,config文件加入域名配置,优化授权

上级 a9dcef24
const SDKConfig = {
const SDKConfig = {
const SDKConfig = {
// 配置项目参数
const SDKConfig = {
// 配置项目参数
sdk_domain: 'https://account.jinsdk.com', // SDK上报的接口域名
pay_domain: 'https://pay.jinsdk.com', // 支付接口域名
report: 'https://s.jinsdk.com/weixinmp/api.php', // 数据上报接口域名
appid: "wx953104af9b9484c8", // 换openid
appName: "推广部测试应用", // 应用名称
......@@ -21,5 +27,5 @@
shareTitle: "鲸鱼推广部", // 分享标题
shareImageUrl: "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3903587193,374462562&fm=27&gp=0.jpg" //分享图片链接
// 结束
// 结束
}
\ No newline at end of file
const Config = {
++ /dev/null
const Config = {
// 配置项目参数
appid: "wx8ccb2ef82e44df92", // 换openid
appName: "测试应用", // 应用名称
productCode: "b5488a667a66561aa97ce2a70137487e", // 产品code
productKey: "d0e3e7998c6b3b47dd9e42c3769edd2c", // 产品key,用于生成签名
appVersion: "产品版本号(cp)", // 产品版本号
offerid: "1450016203", // 支付
sdkVersion: "1.0.0", // SDK版本号,SDK接口需要
shareTitle: "鲸鱼游戏棒棒棒", // 分享标题
shareImageUrl: "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3903587193,374462562&fm=27&gp=0.jpg" //分享图片链接
// 结束
}
\ No newline at end of file
/**
++ /dev/null
/**
* 平台数据接口。
* 由于每款游戏通常需要发布到多个平台上,所以提取出一个统一的接口用于开发者获取平台数据信息
* 推荐开发者通过这种方式封装平台逻辑,以保证整体结构的稳定
* 由于不同平台的接口形式各有不同,白鹭推荐开发者将所有接口封装为基于 Promise 的异步形式
*/
declare interface Platform {
getUserInfo(): Promise<any>;
login(): Promise<any>
getNetworkType(): Promise<any>
getSystemInfo(): Promise<any>
onShow(): Promise<any>
request(uri, data, method): Promise<any>
showModal(obj): Promise<any>
share(obj): Promise<any>
pay(params): Promise<any>
shareInit(): Promise<any>
addShareEvent(params): Promise<any>
customer(params): Promise<any>
navigateToMiniProgram(params): Promise<any>
showToast(params): Promise<any>
showMsg(str): Promise<any>
exitWechatApp(): Promise<any>
getLaunchOptionsSync(): Promise<any>
}
class DebugPlatform implements Platform {
async getUserInfo() {}
async login() {}
async getNetworkType(){}
async getSystemInfo(){}
async onShow() {}
async request(uri, data, method){}
async showModal(obj) {}
async share(obj) {}
async pay(params) {}
async shareInit() {}
async addShareEvent(params) {}
async customer(params) {}
async navigateToMiniProgram(params) {}
async showToast(params) {}
async showMsg(str) {}
async exitWechatApp() {}
async getLaunchOptionsSync() {}
}
if (!window.platform) {
window.platform = new DebugPlatform();
}
declare let platform: Platform;
declare interface Window {
platform: Platform
}
\ No newline at end of file
/**
++ /dev/null
/**
* 请在白鹭引擎的Main.ts中调用 platform.login() 方法调用至此处。
*/
class WxgamePlatform {
name = 'wxgame'
login() {
return new Promise((resolve, reject) => {
wx.login({
success: (res) => {
resolve(res)
},
fail: (res) => {
reject(res)
}
})
}).catch((error) => {
console.error(error);
})
}
getUserInfo() {
return new Promise((resolve, reject) => {
wx.getUserInfo({
withCredentials: true,
success: function(res) {
resolve(res);
}
})
}).catch((error) => {
console.error(error);
})
}
onShow() {
return new Promise((resolve, reject) => {
wx.onShow(res => {
const exParams = res.referrerInfo && res.referrerInfo.extraData && Object.keys(res.referrerInfo.extraData).length > 0 ? res.referrerInfo.extraData : {}
// url参数
resolve(Object.assign({}, res.query, exParams))
})
}).catch((error) => {
console.error(error);
})
}
getSystemInfo() {
return new Promise((resolve, reject) => {
wx.getSystemInfo({
success: (res) => {
resolve(res);
}
})
}).catch((error) => {
console.error(error);
})
}
getNetworkType() {
return new Promise((resolve, reject) => {
wx.getNetworkType({
success: (res) => {
resolve(res);
}
})
}).catch((error) => {
console.error(error);
})
}
request(URI, DATA, METHOD) {
return new Promise((resolve, reject) => {
wx.request({
url: URI,
method: METHOD,
data: DATA,
header: {
'Content-Type': 'json'
},
success: resolve,
fail: reject
})
}).catch((error) => {
reject(error)
})
}
showModal(DATA) {
wx.showModal(Object.assign({}, DATA, {
cancelText: '取消',
confirmText: '确认'
}))
}
showMsg(str) {
wx.showToast({
title: str,
duration: 1500
})
}
share(DATA) {
return new Promise((resolve, reject) => {
wx.shareAppMessage(Object.assign(DATA, {
success: function(res) {
resolve(res)
},
fail: function(res) {
reject(res)
},
complete() {}
}))
})
}
shareInit() {
wx.showShareMenu({
withShareTicket: true,
success: () => {},
fail: () => {},
complete: () => {}
})
}
addShareEvent(DATA) {
wx.onShareAppMessage(() => {
return Object.assign(DATA, {
success: function() {},
fail: function() {},
complete() {}
})
})
}
getLaunchOptionsSync() {
return new Promise((resolve, reject) => {
const options = wx.getLaunchOptionsSync()
if (Object.keys(options.query).length > 0 || Object.keys(options.referrerInfo).length > 0) {
const obj = {}
Object.assign(obj, options.query, options.referrerInfo.extraData) // 合并数据
resolve(obj)
} else {
reject(options)
}
})
}
pay(params) {
return new Promise((resolve, reject) => {
wx.requestMidasPayment(Object.assign(params, {
success: function(res) {
resolve(res)
},
fail: function(res) {
reject(res)
},
complete: function() {
console.log("Rechare")
}
}))
})
}
customer(params) {
wx.openCustomerServiceConversation(params)
}
navigateToMiniProgram(params) {
wx.navigateToMiniProgram(params)
}
exitWechatApp() {
return new Promise((resolve, reject) => {
wx.exitMiniProgram({
success: function(res) {
console.log('退出成功')
resolve(res)
},
fail: function(res) {
console.log('退出失败')
reject(res)
}
})
})
}
openDataContext = new WxgameOpenDataContext();
}
class WxgameOpenDataContext {
createDisplayObject(type, width, height) {
const bitmapdata = new egret.BitmapData(sharedCanvas);
bitmapdata.$deleteSource = false;
const texture = new egret.Texture();
texture._setBitmapData(bitmapdata);
const bitmap = new egret.Bitmap(texture);
bitmap.width = width;
bitmap.height = height;
if (egret.Capabilities.renderMode == "webgl") {
const renderContext = egret.wxgame.WebGLRenderContext.getInstance();
const context = renderContext.context;
////需要用到最新的微信版本
////调用其接口WebGLRenderingContext.wxBindCanvasTexture(number texture, Canvas canvas)
////如果没有该接口,会进行如下处理,保证画面渲染正确,但会占用内存。
if (!context.wxBindCanvasTexture) {
egret.startTick((timeStarmp) => {
egret.WebGLUtils.deleteWebGLTexture(bitmapdata.webGLTexture);
bitmapdata.webGLTexture = null;
return false;
}, this);
}
}
return bitmap;
}
postMessage(data) {
const openDataContext = wx.getOpenDataContext();
openDataContext.postMessage(data);
}
}
window.platform = new WxgamePlatform();
\ No newline at end of file
const Config = {
++ /dev/null
const Config = {
// 配置项目参数
appid: "wx8ccb2ef82e44df92", // 换openid
appName: "测试应用", // 应用名称
productCode: "b5488a667a66561aa97ce2a70137487e", // 产品code
productKey: "d0e3e7998c6b3b47dd9e42c3769edd2c", // 产品key,用于生成签名
appVersion: "产品版本号(cp)", // 产品版本号
offerid: "1450016203", // 支付
sdkVersion: "1.0.0", // SDK版本号,SDK接口需要
shareTitle: "鲸鱼游戏棒棒棒", // 分享标题
shareImageUrl: "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3903587193,374462562&fm=27&gp=0.jpg" //分享图片链接
// 结束
}
\ No newline at end of file
/**
++ /dev/null
/**
* 平台数据接口。
* 由于每款游戏通常需要发布到多个平台上,所以提取出一个统一的接口用于开发者获取平台数据信息
* 推荐开发者通过这种方式封装平台逻辑,以保证整体结构的稳定
* 由于不同平台的接口形式各有不同,白鹭推荐开发者将所有接口封装为基于 Promise 的异步形式
*/
declare interface Platform {
getUserInfo(): Promise<any>;
login(): Promise<any>
getNetworkType(): Promise<any>
getSystemInfo(): Promise<any>
onShow(): Promise<any>
request(uri, data, method): Promise<any>
showModal(obj): Promise<any>
share(obj): Promise<any>
pay(params): Promise<any>
shareInit(): Promise<any>
addShareEvent(params): Promise<any>
customer(params): Promise<any>
navigateToMiniProgram(params): Promise<any>
showToast(params): Promise<any>
showMsg(str): Promise<any>
exitWechatApp(): Promise<any>
getLaunchOptionsSync(): Promise<any>
createUserInfoButton(): Promise<any>
}
class DebugPlatform implements Platform {
async getUserInfo() {}
async login() {}
async getNetworkType(){}
async getSystemInfo(){}
async onShow() {}
async request(uri, data, method){}
async showModal(obj) {}
async share(obj) {}
async pay(params) {}
async shareInit() {}
async addShareEvent(params) {}
async customer(params) {}
async navigateToMiniProgram(params) {}
async showToast(params) {}
async showMsg(str) {}
async exitWechatApp() {}
async getLaunchOptionsSync() {}
async createUserInfoButton() {}
}
if (!window.platform) {
window.platform = new DebugPlatform();
}
declare let platform: Platform;
declare interface Window {
platform: Platform
}
\ No newline at end of file
/**
++ /dev/null
/**
* 请在白鹭引擎的Main.ts中调用 platform.login() 方法调用至此处。
*/
class WxgamePlatform {
name = 'wxgame'
login() {
return new Promise((resolve, reject) => {
wx.login({
success: (res) => {
resolve(res)
},
fail: (res) => {
reject(res)
}
})
}).catch((error) => {
console.error(error);
})
}
getUserInfo() {
return new Promise((resolve, reject) => {
wx.getUserInfo({
withCredentials: true,
success: function(res) {
resolve(res);
},
fail: function(res) {
reject(res)
}
})
}).catch((error) => {
console.error(error);
})
}
getSystemInfo() {
return new Promise((resolve, reject) => {
wx.getSystemInfo({
success: (res) => {
resolve(res);
}
})
}).catch((error) => {
console.error(error);
})
}
getNetworkType() {
return new Promise((resolve, reject) => {
wx.getNetworkType({
success: (res) => {
resolve(res);
}
})
}).catch((error) => {
console.error(error);
})
}
request(URI, DATA, METHOD) {
return new Promise((resolve, reject) => {
wx.request({
url: URI,
method: METHOD,
data: DATA,
header: {
'Content-Type': 'json'
},
success: resolve,
fail: reject
})
}).catch((error) => {
reject(error)
})
}
showModal(DATA) {
wx.showModal(Object.assign({}, DATA, {
cancelText: '取消',
confirmText: '确认'
}))
}
showMsg(str) {
wx.showToast({
title: str,
icon: 'none',
duration: 3000
})
}
share(DATA) {
return new Promise((resolve, reject) => {
wx.shareAppMessage(Object.assign(DATA, {
success: function(res) {
resolve(res)
},
fail: function(res) {
reject(res)
},
complete() {}
}))
})
}
shareInit() {
wx.showShareMenu({
withShareTicket: true,
success: () => {},
fail: () => {},
complete: () => {}
})
}
addShareEvent(DATA) {
wx.onShareAppMessage(() => {
return Object.assign(DATA, {
success: function() {},
fail: function() {},
complete() {}
})
})
}
getLaunchOptionsSync() {
return new Promise((resolve) => {
const options = wx.getLaunchOptionsSync()
if (Object.keys(options.query).length > 0 || Object.keys(options.referrerInfo).length > 0) {
const obj = {}
Object.assign(obj, options.query, options.referrerInfo.extraData) // 合并数据
resolve(obj)
} else {
resolve(options)
}
})
}
pay(params) {
return new Promise((resolve, reject) => {
wx.requestMidasPayment(Object.assign(params, {
success: function(res) {
resolve(res)
},
fail: function(res) {
reject(res)
},
complete: function() {
console.log("Rechare")
}
}))
})
}
customer(params) {
wx.openCustomerServiceConversation(params)
}
navigateToMiniProgram(params) {
wx.navigateToMiniProgram(params)
}
exitWechatApp() {
return new Promise((resolve, reject) => {
wx.exitMiniProgram({
success: function(res) {
console.log('退出成功')
resolve(res)
},
fail: function(res) {
console.log('退出失败')
reject(res)
}
})
})
}
createUserInfoButton() {
const UserInfoButton = wx.createUserInfoButton({
type: 'text',
text: ' ',
style: {
left: 0,
top: 0,
width: 800,
height: 1200,
backgroundColor: 'rgba(0, 0, 0, 0)',
color: '#ffffff'
}
})
return UserInfoButton
}
openDataContext = new WxgameOpenDataContext();
}
class WxgameOpenDataContext {
createDisplayObject(type, width, height) {
const bitmapdata = new egret.BitmapData(sharedCanvas);
bitmapdata.$deleteSource = false;
const texture = new egret.Texture();
texture._setBitmapData(bitmapdata);
const bitmap = new egret.Bitmap(texture);
bitmap.width = width;
bitmap.height = height;
if (egret.Capabilities.renderMode == "webgl") {
const renderContext = egret.wxgame.WebGLRenderContext.getInstance();
const context = renderContext.context;
////需要用到最新的微信版本
////调用其接口WebGLRenderingContext.wxBindCanvasTexture(number texture, Canvas canvas)
////如果没有该接口,会进行如下处理,保证画面渲染正确,但会占用内存。
if (!context.wxBindCanvasTexture) {
egret.startTick((timeStarmp) => {
egret.WebGLUtils.deleteWebGLTexture(bitmapdata.webGLTexture);
bitmapdata.webGLTexture = null;
return false;
}, this);
}
}
return bitmap;
}
postMessage(data) {
const openDataContext = wx.getOpenDataContext();
openDataContext.postMessage(data);
}
}
window.platform = new WxgamePlatform();
\ No newline at end of file
const SDKConfig = {
++ /dev/null
const SDKConfig = {
// 配置项目参数
appid: "wx8ccb2ef82e44df92", // 换openid
appName: "测试应用", // 应用名称
productCode: "b5488a667a66561aa97ce2a70137487e", // 产品code
productKey: "d0e3e7998c6b3b47dd9e42c3769edd2c", // 产品key,用于生成签名
appVersion: "产品版本号(cp)", // 产品版本号
offerid: "1450016203", // 支付
sdkVersion: "1.0.0", // SDK版本号,SDK接口需要
shareTitle: "鲸鱼游戏棒棒棒", // 分享标题
shareImageUrl: "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3903587193,374462562&fm=27&gp=0.jpg" //分享图片链接
// 结束
}
\ No newline at end of file
const SDKConfig = {
++ /dev/null
const SDKConfig = {
// 配置项目参数
appid: "wx8ccb2ef82e44df92", // 换openid
appName: "测试应用", // 应用名称
productCode: "b5488a667a66561aa97ce2a70137487e", // 产品code
productKey: "d0e3e7998c6b3b47dd9e42c3769edd2c", // 产品key,用于生成签名
appVersion: "产品版本号(cp)", // 产品版本号
offerid: "1450016203", // 支付
sdkVersion: "1.0.0", // SDK版本号,SDK接口需要
shareTitle: "鲸鱼游戏棒棒棒", // 分享标题
shareImageUrl: "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3903587193,374462562&fm=27&gp=0.jpg" //分享图片链接
// 结束
}
\ No newline at end of file
const SDKConfig = {
++ /dev/null
const SDKConfig = {
// 配置项目参数
appid: "wx8ccb2ef82e44df92", // 换openid
appName: "测试应用", // 应用名称
productCode: "b5488a667a66561aa97ce2a70137487e", // 产品code
productKey: "d0e3e7998c6b3b47dd9e42c3769edd2c", // 产品key,用于生成签名
appVersion: "产品版本号(cp)", // 产品版本号
offerid: "1450016203", // 支付
sdkVersion: "1.0.0", // SDK版本号,SDK接口需要
shareTitle: "鲸鱼游戏棒棒棒", // 分享标题
shareImageUrl: "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3903587193,374462562&fm=27&gp=0.jpg" //分享图片链接
// 结束
}
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论