Em quantos você pisou? Esses poços no desenvolvimento do pequeno jogo WeChat H5

Atualmente, os jogos pequenos são particularmente populares, e muitas equipes também lançaram projetos de pequenos jogos do WeChat e realizaram um pré-estudo técnico na fase inicial do projeto. No entanto, a partir da documentação oficial do WeChat, muitos poços podem ser encontrados.

1. Poço do ambiente operacional

1. Compatibilidade com API

  • 1.1, API de rede

O núcleo da BOM é o Windows, que representa uma instância de um navegador.Qualquer objeto, variável e função personalizada em uma página da Web usa o Windows como seu objeto global; a falta de Dom significa comunicação para http, websocket e armazenamento local. A API encontrará problemas.Felizmente, o WeChat fornece implementações privadas dessas duas APIs. Tudo o que precisamos fazer é se adaptar.

A idéia básica da adaptação é detectar se está executando a plataforma WeChat e, em seguida, usar os recursos de linguagem dinâmica do JS para reescrever dinamicamente a API da BOM. As vantagens e desvantagens são as seguintes:

1. A vantagem é que o chamador da API não precisa fazer nenhuma alteração e o custo da adaptação é quase zero.
Não percebo a diferença no ambiente de execução entre minijogos e navegadores WeChat, e é muito amigável.

2. A desvantagem é que aumentará o tamanho do código, mas a perda causada pelo aumento no tamanho do código é quase insignificante.
A relação custo-benefício desse esquema de adaptação é muito alta. Exemplos de códigos HTTP de adaptação são os seguintes:

Descrição da imagem

  • 1.2, Modularidade do WeChat

Os minijogos WeChat fornecem uma API de módulo no estilo CommonJS. Você pode exportar módulos através de module.exports e exportações e importar módulos através de require. Isso é muito diferente da maneira como os navegadores importam arquivos JS. Existe uma camada de isolamento no meio.
Vamos dar um exemplo para ilustrar os problemas causados ​​pela modularidade.
Normalmente, usamos uma classe personalizada em um arquivo js no navegador, que pode ser usado diretamente através da tag.Descrição da imagem

Descrição da imagem

Mas isso não é possível no WeChat. Você precisa importar a API para um objeto e adicionar esse prefixo ao usá-lo. Como resultado, muitos códigos precisam ser modificados; portanto, como evitar a adição desse prefixo?
Em vista dessa situação, a solução é anexar dinamicamente todos os métodos e objetos necessários externamente ao objeto de janela e modificar o código acima como um exemplo:

Descrição da imagem

  1. Alterações no fluxo de trabalho

Como os minijogos WeChat não possuem Dom e Bom, muitas bibliotecas que dependem do Dom e Bom não podem ser usadas diretamente, como o jquery.
Esse ambiente do WeChat causará mais ou menos alterações em nosso fluxo de trabalho.O uso de mecanismos de desenvolvimento de jogos de terceiros (como Cocos Createor / Egret / Laya) pode compensar as perdas causadas por esses problemas.

Segundo, restrições de recursos

1. O tamanho total do pacote de códigos permitido para cada mini-jogo é de 4 MB.
Solução 1: Compacte o arquivo js e coloque o recurso de imagem no servidor para pré-carregamento.
Solução 2: use a função de gerenciamento de recursos do mecanismo de terceiros.

2. O miniaplicativo WeChat exige que o servidor do desenvolvedor suporte os protocolos https e wss.
Solução: O servidor ativa o HTTPS. Há muitas maneiras de conseguir isso, o proxy reverso Nginx é recomendado.

Três, auditoria de lançamento

Após a conclusão do desenvolvimento do minijogo, são necessárias as seguintes qualificações para publicação:
1: registro de nome de domínio do servidor
2: suporte a wss https
3: cópia do certificado de direitos autorais do software + assinatura do carimbo
4: conta da plataforma pública WeChat e AppID
5: ferramentas do desenvolvedor wechat_devtools_1.02.1803210 _x64
6: Cópia do relatório de revisão automática do jogo + assinatura
7: conta de desenvolvimento iOS (opcional, preencha o espaço em branco)
8: número da versão do jogo (é necessário abrir o pagamento do WeChat)
9: identidade do desenvolvedor corporativo + conta pública (pagamento aberto do WeChat) Obrigatório)

Acho que você gosta

Origin www.cnblogs.com/jlfw/p/12714971.html
Recomendado
Clasificación