WAP Wakeup
9/19/2008
Wakeup Application Protocol (WAP) sem fio é um recurso que fornece a beneficiar da economizando memória aplicativo.
Para todas as plataformas
Geralmente, um aplicativo é capaz de receber datagramas WAP somente enquanto ele estiver execução e residentes na memória. Em termos de recursos, isso está inviável para assíncrono aplicativos, qual trabalho executar somente quando de entrada processamento mensagens (que chegarem a qualquer momento — às vezes, com pouca freqüência). Enquanto espera, esse tipo de aplicativo não faz nada. Exceto para o fato que o aplicativo ainda consome recursos (memória valiosos aplicativo), ele é como se ela estava hibernando. Um exemplo é um programa xadrez que processa move xadrez enviadas a ele como binário Wireless Datagram Protocol (WDP) datagramas pela Service a mensagem curta (SMS).
Usando o recurso WAP Wakeup, um aplicativo pode ser assíncrono disponível para processo de entrada mensagens, ainda ser nem execução nem carregado na memória. Quando uma porta WDP recebe uma mensagem WDP Short Message Service (SMS) e a porta foi não "aberta" por um aplicativo (que está, registrado com a camada WDP), o provedor WDP procura o Registro para o Wakeup WAP registrado aplicativo associado com essa porta e automaticamente inicia-lo. O aplicativo abre uma classe de janela de escuta de aplicativos, que recebe uma mensagem do provedor de WDP (o DWORD valor "WDP Port. Interpretando esta mensagem como um sinal que uma mensagem WDP está aguardando para ele na porta, o aplicativo abre essa porta na camada de WDP. Em seguida, o aplicativo recebe e processa a mensagem WDP Short Message Service (SMS).
Comentários
WDP fornece de resolução Port-Based. Número de porta é usado pelo mecanismo de ativação para rota datagramas para a correta superiores-entidade camada (such as um protocolo ou aplicativo) acima a camada WDP. O mecanismo de ativação permite que os aplicativos registrar para mensagens em uma porta específica incluindo número de porta no nome do evento. Você deve fornecer um chave exclusiva para cada porta WDP você desejar para registrar com seu aplicativo. O mecanismo de ativação é para datagramas WAP sobre curta mensagem Service (SMS) somente. Somente os aplicativos podem ser acionados pelo recurso de Wakeup (por exemplo, você não pode usar o recurso como um mecanismo de paginação).
Não é possível registrar seu aplicativo para um intervalo de portas WDP; Você deve registrar para cada porta individualmente. Para evitar colisões, você deve garantir que múltiplo aplicativos não registrar para a mesma porta. Quando você registrar uma porta para você aplicativo, você deve determinar se outro aplicativo já "proprietário" a porta. Ao escolher um número porta WDP, manter o número de portas no mínimo e siga as diretrizes de uso porta WDP. Para obter mais informações, consulte "Especificação (WDP) do protocolo de datagrama sem fio" Nesta OMA Web site.
Para Mobile Windows
Para usar Wakeup WAP com seu aplicativo, você precisa para adicionar uma chave como a seguinte um Registro de sistema:
HKLM\Software\Microsoft\Shell\Event\Network\WDP\WDPportX\appName
A chave deve conter quatro valores, que são detalhados na seguinte tabela.
Nome da chave | Valor da chave | Valor tipo | Descrição |
---|---|---|---|
"classe" |
classe seqüência de caracteres |
Seqüência de caracteres |
Janela de destino para a mensagem WDP/Short Message Service (SMS) (Application Listener Window Class). |
"command" |
Caminho de aplicativos do cliente WDP |
Seqüência de caracteres |
Nome do aplicativo a caminho totalmente qualificado. |
"NotifyOnLaunch" |
1 |
DWORD |
Um sinalizador que indica que as mensagens associado com o WDP porta devem ser lançado para a classe de janela de escuta de aplicativos. Observação Sem essa chave, o aplicativo ainda é iniciado, mas não mensagens são enviadas para a classe de janela de escuta de aplicativos. |
Porta WDP |
Valor da mensagem Postado para a janela |
DWORD |
Uma porta Registro/janela mensagem par. O nome da chave de Registro representa a porta WDP. O valor DWORD representa a mensagem janela que será postada para o Application Listener Window Class. Observação Você deve garantir que as mensagens são mapeadas para a porta WDP. |
Para um completo exemplo, consulte " Exemplo: Registrando um aplicativo Xadrez" neste tópico.
Exemplo: Registrando um aplicativo Xadrez
O seguinte exemplo demonstra como registrar um aplicativo xadrez para notificação de ativação quando xadrez Move (mensagens WDP) chegarem em WDPport1 ou WDPport2.
HKLM\Software\Microsoft\Shell\Event\Network\WDP\WDPport1\chess
"Class" = REG_SZ: ListenerWnd
"Command" = REG_SZ: chess.exe
"NotifyOnLaunch" = REG_DWORD: 1
WDPport1 = REG_DWORD: application message, such as the value of WM_APP+Num1.
HKLM\Software\Microsoft\Shell\Event\Network\WDP\WDPport2\chess
"Class" = REG_SZ: ListenerWnd
"Command" = REG_SZ: chess.exe
"NotifyOnLaunch" = REG_DWORD: 1
WDPport2 = REG_DWORD: application message, such as the value of WM_APP+Num2.
Para Windows incorporado CE
WAP Wakeup Using a Generic Application Wakeup API permite que os aplicativos desligamento e, em seguida, continuar ou iniciar quando um pacote WAP (binário datagramas) chegam pela curta mensagem Service (SMS).
Para usar Wakeup WAP com seu aplicativo, você precisa para adicionar uma chave como a seguinte um Registro de sistema:
HKEY_LOCAL_MACHINE\System\Notifications\appname
A chave deve conter vários valores, que são detalhados na seguinte tabela.
Nome da chave | Valor da chave | Valor tipo | Descrição |
---|---|---|---|
"Aplicativo" |
Caminho do aplicativo de cliente |
Seqüência de caracteres |
(Obrigatório) Especifica o caminho totalmente qualificado para o aplicativo para iniciar, along with opcional parâmetros linha de comando. De exemplo, “ \\windows\\wapwakeup.exe arg1 arg2 ”. |
"condicional destino" |
Valor de porta |
Seqüência de caracteres |
(Obrigatório) Especifica o número porta WDP associado com este aplicativo. Este valor deve ser formatado como “ porta = <número_da_porta>”. De exemplo, “ porta = 1234”. |
"Nome de classe" |
classe seqüência de caracteres |
Seqüência de caracteres |
(Opcional) Especifica a janela destino ao qual a mensagem WDP/Short Message Service (SMS) será postada. Isso é também conhecido como a classe de janela de escuta de aplicativos. |
"mensagem" |
DWORD:5678 |
DWORD |
(Opcional) A mensagem para postagem para a janela. |
"hkey" |
dword:80000002 |
DWORD |
(Obrigatório) Isso deve ser definido para DWORD:80000002. |
"chave" |
Comm\\Cellular\\Wap\\WapImpl |
Seqüência de caracteres |
(Obrigatório) Isso deve ser definido para “ Comm\\Cellular\\Wap\\WapImpl ”. |
"Nome do valor" |
Wakeup WAP |
Seqüência de caracteres |
(Obrigatório) Isso deve ser definido para “ Wakeup WAP ”. |
"Comparação condicional" |
dword:9 |
DWORD |
(Obrigatório) Isso deve ser definido para DWORD:9. |
"condicional máscara |
dword:0 |
DWORD |
(Obrigatório) Isso deve ser definido para DWORD:0. |
"sinalizadores" |
dword:1 |
DWORD |
(Obrigatório) Isso deve ser definido para DWORD:1. |
Requisitos
Windows Embedded CE | Windows CE .NET 4.2 and later |
Windows Mobile | Pocket PC for Windows Mobile 2003 and later, Smartphone for Windows Mobile 2003 and later |
See Also
Concepts
Short Message Service (SMS) API
Wireless Application Protocol (WAP) API