Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este guia mostra-lhe como criar um addon nativo em C++ que utilize as APIs de notificação do Windows App SDK na sua aplicação Electron. Este é um ótimo ponto de partida para perceber addons nativos antes de entrar em cenários mais complexos.
Pré-requisitos
- Concluí a configuração do ambiente de desenvolvimento
- Windows 11
Passo 1: Criar um addon nativo em C++
Use a linha de comando winapp para gerar um modelo de addon em C++:
npx winapp node create-addon --template cpp --name nativeWindowsAddon
Isto cria uma nativeWindowsAddon/ pasta com:
-
addon.cc- O seu código C++ que irá chamar APIs do Windows -
binding.gyp- Configuração de compilação para compilação nativa
O comando também adiciona um build-addon script ao seu package.json.
Construa o addon:
npm run build-addon
Passo 2: Adicionar código de notificação
Abre nativeWindowsAddon/addon.cc e atualiza-o para usar as APIs de notificação Windows App SDK. O modelo gerado inclui os cabeçalhos necessários do Windows SDK e do Windows App SDK.
Adicionar inclusões para a API de notificação.
#include <winrt/Microsoft.Windows.AppNotifications.h>
#include <winrt/Microsoft.Windows.AppNotifications.Builder.h>
Adicione uma função que mostre uma notificação no Windows:
Napi::Value ShowNotification(const Napi::CallbackInfo& info) {
Napi::Env env = info.Env();
try {
std::string title = info[0].As<Napi::String>().Utf8Value();
std::string message = info[1].As<Napi::String>().Utf8Value();
winrt::Microsoft::Windows::AppNotifications::Builder::AppNotificationBuilder builder;
builder.AddText(winrt::to_hstring(title));
builder.AddText(winrt::to_hstring(message));
auto notification = builder.BuildNotification();
winrt::Microsoft::Windows::AppNotifications::AppNotificationManager::Default().Show(notification);
return Napi::Boolean::New(env, true);
} catch (const winrt::hresult_error& e) {
Napi::Error::New(env, winrt::to_string(e.message())).ThrowAsJavaScriptException();
return env.Null();
}
}
Registar a função no Init método:
exports.Set("showNotification", Napi::Function::New(env, ShowNotification));
Passo 3: Constrói o addon
npm run build-addon
Passo 4: Testar a notificação
Abra src/index.js e carregue o adddon:
const addon = require('../nativeWindowsAddon/build/Release/nativeWindowsAddon.node');
Adicione uma chamada de teste:
addon.showNotification('Hello from Electron!', 'This notification uses the Windows App SDK.');
Execute o aplicativo:
npm start
Deverias ver aparecer uma notificação do Windows.
Passo 5: Atualizar a identidade de depuração
Sempre que modificares appxmanifest.xml, executa:
npx winapp node add-electron-debug-identity
Passos seguintes
- Criar um addon Phi Silica - Usar APIs de IA no dispositivo
- Criação de um addon WinML - Executar machine learning modelos
- Embalagem para distribuição - Crie um pacote MSIX assinado
Tópicos relacionados
Windows developer