Egret -- Egret 微信小遊戲API呼叫
在Egret中是可以直接呼叫微信小遊戲的API的,Egret中添加了平臺程式碼,可以呼叫各個平臺API。
該章效果如下:
一、新建工程會發現在src資料夾中會包含一個Platform.ts的檔案,如果沒有請建立。
/**
* 平臺數據介面。
* 由於每款遊戲通常需要釋出到多個平臺上,所以提取出一個統一的介面用於開發者獲取平臺數據信息
* 推薦開發者通過這種方式封裝平臺邏輯,以保證整體結構的穩定
* 由於不同平臺的介面形式各有不同,白鷺推薦開發者將所有介面封裝為基於 Promise 的非同步形式
*/
declare interface Platform {
getUserInfo(): Promise<any>;
login(): Promise<any>
}
class DebugPlatform implements Platform {
async getUserInfo() {
return { nickName: "username" }
}
async login() {
}
}
if (!window.platform) {
window.platform = new DebugPlatform();
}
declare let platform: Platform;
declare interface Window {
platform: Platform
}
並將程式碼拷貝到Platform.ts中。
二、打包釋出微信工程,並在微信開發者工具中開啟,可以看到platform.js檔案,若沒有,請建立platform.js檔案。微信的其他介面也要寫到該檔案中,分享、微信點選進入等。
/**
* 請在白鷺引擎的Main.ts中呼叫 platform.login() 方法呼叫至此處。
*/
class WxgamePlatform {
name = 'wxgame'
login() {
return new Promise((resolve, reject) => {
wx.login({
success: (res) => {
resolve(res)
}
})
})
}
getUserInfo() {
return new Promise((resolve, reject) => {
wx.getUserInfo({
withCredentials: true,
success: function (res) {
var userInfo = res.userInfo
var nickName = userInfo.nickName
var avatarUrl = userInfo.avatarUrl
var gender = userInfo.gender //性別 0:未知、1:男、2:女
var province = userInfo.province
var city = userInfo.city
var country = userInfo.country
resolve(userInfo);
}
})
})
}
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;
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();
Platform聲明瞭平臺函式,在egret中可以直接呼叫,在各個平臺中實現程式碼即可。
三、在egret中呼叫登陸,並獲取微信使用者資訊。在main.ts中寫入如下程式碼。
await platform.login()呼叫登陸API,
const userInfo = await platform.getUserInfo();獲取微信使用者資訊,並返回使用者資訊,
await 非同步呼叫,返回呼叫結果在執行下一步。
class Main extends egret.DisplayObjectContainer {
public constructor() {
super();
this.addEventListener(egret.Event.ADDED_TO_STAGE, this.onAddToStage, this);
}
private onAddToStage(event: egret.Event) {
this.runGame().catch(e => {
console.log(e);
})
}
private async runGame() {
await platform.login();
const userInfo = await platform.getUserInfo();
this.createGameScene(userInfo);
}
private textfield: egret.TextField;
/**
* 建立遊戲場景
* Create a game scene
*/
private createGameScene(userInfo: any) {
let bg: eui.Rect = new eui.Rect();
this.addChild(bg);
bg.width = this.stage.width;
bg.height = this.stage.height;
bg.fillColor = 0xF8F8F8;
let avatar: eui.Image = new eui.Image();
avatar.x = 100;
avatar.y = 100;
avatar.width = 120;
avatar.height = 120;
avatar.source = userInfo.avatarUrl;
this.addChild(avatar);
let nickName: eui.Label = new eui.Label();
nickName.x = 100;
nickName.y = 250;
nickName.textColor = 0xff0000;
nickName.text = userInfo.nickName;
this.addChild(nickName);
}
}
打包微信工程,並在開發者工具開啟。執行獲取到微信使用者資訊。
相關推薦
Egret -- Egret 微信小遊戲API呼叫
在Egret中是可以直接呼叫微信小遊戲的API的,Egret中添加了平臺程式碼,可以呼叫各個平臺API。 該章效果如下: 一、新建工程會發現在src資料夾中會包含一個Platform.ts的檔案,如果沒有請建立。 /** * 平臺數據介面。 *
Egret之微信小遊戲初體驗
Egret 微信 小遊戲 一 : 首先介紹2個命令: ①:發布小遊戲 egret public --target wxgame ②:用微信開發者工具打開 egret run --target wxgame 二 : 步驟 ① : 使用egret 5.1.2及其以上的版本創建一個EUI的遊戲項目我使用
Egret之微信小遊戲基礎Bug修復
Egret 微信小遊戲 小遊戲 問題 基礎 一 : 第三方類庫未定義如 : smallLib類庫 解決方案: 找到wxgame.ts , 在onFile方法中加入 if(filename == "libs/modules/smallLib/smallLib.j
Egret 生成 自帶EUI 的微信小遊戲 踩坑!
end custom 點擊 ati gre faq commonjs require IE 1. 首先,再次被網上一大堆屎一樣的資料搞得浪費了我一天時間。各種坑。 2. 本文先講一種正確的方式,然後再列舉坑。 去www.egret.com下載最新的引擎,我的最新版
Egret微信小遊戲轉發、分享等功能實現
http://bbs.egret.com/thread-50904-1-1.html 這是官方教程的實現。 1. 需要在Platform.ts裡呼叫platform.js介面。 2. 在Main.ts通過Platform.ts呼叫執行函式 。 3. 在 platform.js寫相對應的邏
Egret微信小遊戲好友排行榜教程
https://mp.weixin.qq.com/s/kYIdnHv-C5KuR9snekPNBg https://mp.weixin.qq.com/s/PA2sfcGxNfix7sJ8ysy9AA 官方文件。 https://www.jianshu.com/p/600543c4be
白鷺引擎egret打包成微信小遊戲
1、匯入專案以後開啟檔案egretproperties.json修改target 下面的current的web為wxgame r 然後點開打包 在這裡填寫微信小遊戲id以及命名,打包成功以後,即可用微信開發者工具來允許,如果報錯請把縮放模式改成f
egret釋出到微信小遊戲的一些坑
2018年11月14日 11:18:39 yohoj 閱讀數:7 標籤: egret
Egret exml在微信小遊戲這塊兒的坑
知識點: 微信小遊戲不支援eval等方法動態呼叫js指令碼 egret自定義元件暴露在全域性,但是導成微信小遊戲工程的時候必須要將類掛載到window上,可以在srcipts/wxgame/wxgam
Egret微信小遊戲登入授權
getUserInfo(left, bottom) { return new Promise((resolve, reject) => { let sysInfo = wx.getSystemInfoSync(); let sdkVersion
egret微信小遊戲在本地使用者檔案目錄下建立檔案並讀取內容
Platform.ts新增 declare interface Platform { getUserInfo(): Promise<any>; login(): Promise<any> getFileData(fi
【備忘】2018年最新微信小遊戲開發 ES6+小遊戲api開發視訊教程下載
1) 課程介紹、環境開發搭建2) 微信小遊戲開發原理與JS面向物件3) 微信小遊戲邏輯梳理與API介紹4) 微信小遊戲主體開發5) 微信小遊戲音樂和振動API,獲取使用者資訊,設定和登入API,網路請求之HTTP,WebSocket,檔案下載等API詳解6) 課程總結與展望
如何在微信小程式中呼叫騰訊地圖api
微信小程式的地圖api是非常有限的,如果要搜尋地圖上的位置,比如附近的醫院、學校等,就需要使用地圖api,使用騰訊地圖api的過程如下:一、開發者申請騰訊地圖驗證完手機郵箱之後,就可以申請開發者金鑰 並解壓,然後將其解壓放入你的微信小程式開發目錄的util中,這個壓縮檔
呼叫微信小程式API生成二維碼 並轉base64存資料庫
public class GeneralTokenUtil { private static final String appid = ""; private static final String grant_type = ""; // 獲取to
微信小程序API接口
delete func data- nec soft 服務 res data ole 微信小程序API接口 wx.request(OBJECT) wx.request發起的是 HTTPS 請求。 OBJECT參數說明: url->開發者服務器接口地址->St
農場莊園遊戲開發,微信小遊戲,微商城開發
深圳市龍火科技有限公司(SHENZHEN DRAGON FIRE TECHNOLOGY CO.LTD.),專業為企業提供一站式手機APP軟件開發,移動APP推廣服務,包括ANDROID APP開發,IOS APP開發,企業APP定制服務,同時提供全的APP開發流程一記開發方案。 龍火科技自成立以來,以為
微信小遊戲開發
微信小遊戲開發 遊戲開發 棋牌遊戲開發 嗨。。老板你是不是想找公司開發遊戲項目? 我們就是你一直想找的公司,在此懇請老總你認真看看我的介紹 看是否有你想開發項目,歡迎加我v 信視頻了解我公司能力。 專業開發大型3D遊戲軟件; 定制開發任意模式的系統軟件棋 牌果園莊園牧場遊戲 。聯系方式:
微信小遊戲開發,分銷系統定制開發
微信小遊戲 棋牌遊戲 分銷系統定制 ● 深圳市龍火科技有限公司專業為企業提供一站式手機APP軟件開發,移動APP推廣服務,包括ANDROID APP開發,IOS APP開發,企業APP定制服務,同時提供最全的APP開發流程以及開發方案。 ● 龍火科技自成立以來,已為
.net開發 微信小遊戲跳一跳輔助程序
strong 系統 圖片 src 路徑 div net開發 微信 計算 一次巧合我看到了一篇關於微信小遊戲跳一跳的輔助開發源碼,鏈接:http://mp.weixin.qq.com/s/qGpoHNEf1A2AlofKFVdE2w 然後我試著下載下來跑一遍看能不能運行,
玄武大廳平臺出租微信小遊戲「跳一跳」技術手段高分秘籍實現
實現 forum 文章 沒有 好玩 鏈接 .com 微信 新版 最近這兩天,從微信最新版內測開始,到正式版發布,玄武大廳平臺出租(h5.hxforum.com)企鵝2952777280 源碼出售 房卡出售 後臺出租微信小程序的遊戲:跳一跳,可以說是火爆了微信好友圈。甚至比五