Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Handbuch erfahren Sie, wie Sie ein systemeigenes C++-Addon erstellen, das die Windows App SDK Benachrichtigungs-APIs in Ihrer Electron-App verwendet. Dies ist ein guter Ausgangspunkt für das Verständnis nativer Addons, bevor Sie in komplexere Szenarien eintauchen.
Voraussetzungen
- Einrichtung der Entwicklungsumgebung abgeschlossen
- Windows 11
Schritt 1: Erstellen eines nativen C++-Add-Ons
Verwenden Sie die winapp CLI, um eine C++-Add-On-Vorlage zu generieren:
npx winapp node create-addon --template cpp --name nativeWindowsAddon
Dadurch wird ein nativeWindowsAddon/ Ordner mit:
-
addon.cc– Ihr C++-Code, der Windows-APIs aufruft -
binding.gyp– Buildkonfiguration für native Kompilierung
Mit dem Befehl wird auch ein build-addon Skript zu Ihrem package.json hinzugefügt.
Erstellen Sie das Addon:
npm run build-addon
Schritt 2: Hinzufügen von Benachrichtigungscode
Öffnen Sie nativeWindowsAddon/addon.cc, und aktualisieren Sie sie, um die Windows App SDK Benachrichtigungs-APIs zu verwenden. Die generierte Vorlage enthält die erforderlichen Header-Dateien des Windows SDK und des Windows App SDK.
Fügen Sie die Benachrichtigungs-API ein:
#include <winrt/Microsoft.Windows.AppNotifications.h>
#include <winrt/Microsoft.Windows.AppNotifications.Builder.h>
Fügen Sie eine Funktion hinzu, die eine Windows-Benachrichtigung anzeigt:
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();
}
}
Registrieren Sie die Funktion in der Init Methode:
exports.Set("showNotification", Napi::Function::New(env, ShowNotification));
Schritt 3: Erstellen des Add-Ons
npm run build-addon
Schritt 4: Testen der Benachrichtigung
Öffnen src/index.js und laden das Add-On:
const addon = require('../nativeWindowsAddon/build/Release/nativeWindowsAddon.node');
Hinzufügen eines Testanrufs:
addon.showNotification('Hello from Electron!', 'This notification uses the Windows App SDK.');
Führen Sie die App aus:
npm start
Es sollte eine Windows-Benachrichtigung angezeigt werden.
Schritt 5: Aktualisieren der Debugidentität
Führen Sie bei jeder Änderung appxmanifest.xml Folgendes aus:
npx winapp node add-electron-debug-identity
Nächste Schritte
- Erstellen eines Phi-Silikadikat-Add-Ons – Verwenden von AI-APIs auf Geräten
- Creating a WinML addon - Maschinelle Lernmodelle ausführen
- Packen für die Verteilung – Erstellen eines signierten MSIX-Pakets
Zugehörige Themen
Windows developer