Start Debugging

Blog

Seite 10 von 91

2026-10-05 flutterdartadmob

So reservieren Sie Platz für ein adaptives AdMob-Banner in Flutter, um Layout-Verschiebungen zu vermeiden

Das offizielle google_mobile_ads-Beispiel rendert nichts bis onAdLoaded, sodass Ihr Inhalt Sekunden nach dem Erscheinen des Bildschirms um 150 dp springt. Fragen Sie zuerst die verankerte adaptive Größe ab, reservieren Sie sie mit einer SizedBox, speichern Sie die Höhe über App-Starts hinweg und laden Sie erst dann die Anzeige. Gemessen mit Flutter 3.44.8 und google_mobile_ads 9.1.0.

So tragen Sie den vollständigen öffentlichen Schlüssel einer Assembly mit starkem Namen in InternalsVisibleTo eines SDK-Projekts ein

Eine signierte Assembly muss ihre Friend-Assembly über den vollständigen öffentlichen Schlüssel mit 320 Zeichen benennen, nicht über das Token, sonst schlägt der Build mit CS1726 oder CS0281 fehl. Den Schlüssel liefern sn -p und sn -tp oder ein plattformübergreifendes .NET-Skript; danach gehört er in die Key-Metadaten eines InternalsVisibleTo-Elements in der .csproj. Behandelt werden außerdem der Fallback über die PublicKey-Eigenschaft, der DynamicProxyGenAssembly2-Schlüssel für Moq und die Falle mit Zeilenumbrüchen.

Windows-Sitzungsereignisse für Sperren, Entsperren, Anmelden und Abmelden in einer C#-App erkennen

Verwenden Sie SystemEvents.SessionSwitch in einer Desktop- oder Konsolen-App, überschreiben Sie OnSessionChange in einem Windows-Dienst oder hängen Sie sich selbst in WM_WTSSESSION_CHANGE ein. Mit .NET 10-Code für alle drei Varianten, dem versteckten Thread '.NET System Events', dem Grund, warum Dienste die Anmeldung sehen, Desktop-Apps aber nicht, Benachrichtigungen in falscher Reihenfolge und der Abfrage des aktuellen Sperrzustands mit WTSQuerySessionInformation.

So setzen Sie PostgreSQL-Sitzungsparameter wie search_path oder statement_timeout bei jeder EF Core Verbindung mit Npgsql

Ein einmal ausgeführtes SET wird von DISCARD ALL gelöscht, sobald Npgsql die Verbindung an den Pool zurückgibt. Legen Sie search_path und statement_timeout mit den Connection-String-Schlüsselwörtern Search Path und Options ins Startup-Paket, weichen Sie bei Bedarf auf ALTER ROLE oder einen ConnectionOpened-Interceptor aus, und erfahren Sie, warum UsePhysicalConnectionInitializer sein SET stillschweigend verliert.