Resumo dos problemas encontrados pela LayaAir no desenvolvimento do domínio de dados abertos do minijogo WeChat

É muito conveniente desenvolver jogos WeChat com LayaAir. No entanto, para evitar que os desenvolvedores coletem informações de amigos do jogador, o WeChat criou um domínio de dados aberto OpenDataContext para fornecer funções limitadas de amigos. O domínio de dados abertos do WeChat pode ser entendido como um ambiente de programa castrado.No domínio, os desenvolvedores não podem chamar as funções do sistema de arquivos e não há função de rede. Os dados do amigo só podem ser obtidos por meio da API relevante fornecida pelo WeChat e, em seguida, desenhados em um shardeCanvas. O domínio principal exibe as informações do amigo do jogador por meio dessa tela compartilhada.

Introdução à cadeia de relacionamento com amigos do WeChat: https://developers.weixin.qq.com/minigame/dev/tutorial/open-ability/open-data.html

Como LayaAir desenvolve cadeias de amigos:  https://ask.layabox.com/question/15086

 

Ao usar o LayaAir para desenvolver amigos e funções de placar, existem muitas armadilhas que precisam de atenção.

1. O subdomínio não pode exibir os recursos do atlas no domínio principal.     

    Tanto o domínio principal quanto o subdomínio precisam carregar o atlas para exibi-lo corretamente. Ouça a mensagem do domínio principal. Quando o domínio principal carregar o atlas, ele enviará uma mensagem message.isLoad='filedata', apenas execute MiniFileMgr.ziyuFileData[message.url] = message.data; esta linha de código, o subdomínio para exibir a imagem corretamente. (Ao escrever o código de monitoramento, certifique-se de escrevê-lo corretamente. Os dados do arquivo estão todos em minúsculas. Não fiz julgamento porque coloquei uma letra maiúscula. A imagem não pode ser exibida por muito tempo)

if(MiniAdpter.isZiYu && MiniAdpter.isPosMsgYu)
		{
			__JS__('wx').onMessage(function(message:Object):void{
				trace(message);
				if(message['isLoad'] == "filedata")
				{
					MiniFileMgr.ziyuFileData[message.url] = message.data;//文本数据
				}

2. Ao usar a função de rolagem do componente List no subdomínio, um erro será relatado. Definimos o vScrollBarSkin ou hScrollBarSkin da lista como ''" para tornar a lista rolável, mas um erro será relatado no subdomínio. É porque meu mecanismo LayaAir é relativamente antigo (versão 1.17) e precisa estar no Classe de imagem do subdomínio, altere o código:

public function set skin( value:String):void

{

    if( value=="''" || value == '""')

    {

        this.source = null;

        return;

    }

3. O erro relatado pelo subdomínio bitmap._addReference() também ocorre porque a versão é muito antiga e precisa ser atualizada para o mecanismo mais recente. Ou adicione manualmente um julgamento para julgar se o bitmap._addReference é nulo

 

4. A resposta do mouse no subdomínio é deslocada e o botão não pode ser clicado. Geralmente exibimos o subdomínio em um contêiner sprite, mas o sistema de coordenadas do subdomínio também é calculado no canto superior esquerdo da tela. É necessário renovar uma Matrix e redefinir o Laya.stage._canvasTransform do subdomínio

Acho que você gosta

Origin blog.csdn.net/tianhai110/article/details/82693637
Recomendado
Clasificación