← Alle Erweiterungen

Native Erweiterung

KlugKeychain

com.klug.keychain.Keychain

KEIN APM NÖTIG. Herunterladen und loslegen. Einfacher geht es nicht.

Sicherer Schlüssel-Wert-Speicher im System-Schlüsselbund für AIR-Apps. Werte überdauern das Deinstallieren und erneute Installieren der App.

iOSmacOS Im Produktiveinsatz Ab €19 / Jahr · Kaufen

Überblick

KlugKeychain speichert kleine Werte wie Flags, Tokens oder IDs im Schlüsselbund von iOS und macOS. Anders als der normale App-Speicher behält der Schlüsselbund diese Werte, wenn die App deinstalliert und erneut installiert wird.

Das macht ihn zu einem dauerhaften Anker für alles, was eine App über Neuinstallationen hinweg wissen muss, zum Beispiel ob ein Gerät die kostenlose Testphase bereits genutzt hat oder ob ein Konto zuvor gelöscht wurde.

KlugKeychain ist in unseren Apps täglich im Einsatz, unserem Praxisbeweis.

Funktionen

  • Eigenständig: eine ANE, keine Kernbibliothek und keine abhängigen ANEs, die Sie ergänzen müssten
  • Werte per Schlüssel speichern, lesen, prüfen und entfernen
  • Werte überdauern das Deinstallieren und erneute Installieren der App
  • Vom Betriebssystem im System-Schlüsselbund verschlüsselt
  • Eine API für iOS und macOS
  • Einfache synchrone Aufrufe, keine Ereignisse zu behandeln

Unterstützte Plattformen

iOS arm64
macOS Apple Silicon · Intel

Auf anderen Plattformen gibt isSupported false zurück, sodass derselbe Code in einer plattformübergreifenden App bleiben kann.

Unter Android bietet KlugDeviceId denselben neuinstallationssicheren Anker: Die Android-Geräte-ID bleibt gleich, nachdem die App deinstalliert und erneut installiert wurde.

Erste Schritte

Fügen Sie die Erweiterung Ihrem Application Descriptor hinzu:

app.xml
<extensions>
    <extensionID>com.klug.keychain.Keychain</extensionID>
</extensions>

Unter macOS muss die App mit einem Keychain-Access-Group-Entitlement signiert sein. Unter iOS ist kein zusätzliches Entitlement nötig.

Codebeispiele

Drei vollständige Abläufe. Alle Aufrufe sind synchron und kehren sofort zurück; Werte sind Strings. Vollständige Dokumentation →

1 · Unterstützung prüfen und einen Fallback wählen
Setup.as
import com.klug.keychain.Keychain;

var keychain:Keychain = Keychain.getInstance();

// iOS: always true.
// macOS: true only if the app is signed with a keychain access group entitlement;
//        the extension checks this with a test write.
// Android, Windows: false, and every call is a safe no-op.
if ( !keychain.isSupported )
    useLocalStorage();   // your app's fallback, e.g. a SharedObject
2 · Sich eine kostenlose Testphase über Neuinstallationen hinweg merken
Trial.as
const TRIAL_DAYS:Number = 7;

if ( keychain.has( "trialStarted" ) )
{
    var started:Number = Number( keychain.get( "trialStarted" ) );
    var days:Number = ( new Date().time - started ) / 86400000;
    if ( days > TRIAL_DAYS ) showPurchaseScreen();   // your app
}
else
{
    // stays in the keychain after the app is uninstalled and installed again
    keychain.set( "trialStarted", String( new Date().time ) );
}
3 · Einen Wert speichern, lesen und entfernen
Account.as
// set() replaces an existing value; false = not stored
if ( !keychain.set( "accountId", accountId ) )
    trace( "keychain: value not stored" );

// get() returns "" when nothing is stored
var id:String = keychain.get( "accountId" );
if ( id == "" ) showSignIn();   // your app

// sign-out: remove what the app no longer needs;
// true also when the key was already gone
keychain.remove( "accountId" );

API-Übersicht

Keychain.getInstance()Gibt die einzige Instanz zurück.
isSupportedTrue unter iOS. Unter macOS true, wenn die App mit einem Keychain-Access-Group-Entitlement signiert ist; auf anderen Plattformen false.
set(key, value)Speichert einen String und ersetzt einen vorhandenen. Gibt bei Erfolg true zurück; false, wenn nicht unterstützt oder key bzw. value null ist.
get(key)Gibt den gespeicherten Wert zurück, oder einen leeren String, wenn keiner vorhanden ist.
has(key)True, wenn für den Schlüssel ein Wert gespeichert ist.
remove(key)Entfernt den Wert. Gibt true zurück, sobald der Schlüssel nicht mehr existiert.
SpeicherGenerische Passwort-Einträge Ihrer App, lesbar nach dem ersten Entsperren des Geräts, auch im Hintergrund.

KlugKeychain kaufen

Eine Jahreslizenz für eine AIR-Anwendung, mit allen Updates für 12 Monate. Nach der Zahlung erhalten Sie die Erweiterung, die ActionScript-Bibliothek und die Dokumentation per E-Mail, in der Regel innerhalb eines Werktags. Lizenz und Bedingungen

Simple
€19 / Jahr
  • Lizenz für eine AIR-Anwendung
  • Alle Updates für 12 Monate
  • Kein Support
Simple kaufen
Standard
€149 / Jahr
  • Lizenz für eine AIR-Anwendung
  • Alle Updates für 12 Monate
  • Antwort per E-Mail innerhalb von 7 Tagen
Standard kaufen
Priority
€299 / Jahr
  • Lizenz für eine AIR-Anwendung
  • Alle Updates für 12 Monate
  • Antwort per E-Mail innerhalb von 48 Stunden
Priority kaufen
Die Steuern werden an der Kasse von Link (Stripe) berechnet. Die Application-ID Ihrer AIR-App geben Sie beim Bezahlen ein.

Voraussetzungen

AIR SDK51.x (HARMAN)
iOSiOS 17 oder neuer
macOSmacOS 11 oder neuer
Signierung (macOS)Keychain-Access-Group-Entitlement