← Alle utvidelser

Native utvidelse

KlugKeychain

com.klug.keychain.Keychain

INGEN APM NØDVENDIG. Last ned og bruk. Det blir ikke enklere enn dette.

Sikker nøkkel/verdi-lagring i systemets nøkkelring for AIR-apper. Verdiene overlever avinstallering og ny installasjon av appen.

iOSmacOS I produksjon Fra €19 / år · Kjøp

Oversikt

KlugKeychain lagrer små verdier, som flagg, tokens eller ID-er, i nøkkelringen på iOS og macOS. I motsetning til vanlig applagring beholder nøkkelringen disse verdiene når appen avinstalleres og installeres på nytt.

Det gjør den til et varig ankerpunkt for ting en app må huske på tvers av nye installasjoner, for eksempel om en enhet allerede har brukt en gratis prøveperiode, eller om en konto er slettet tidligere.

KlugKeychain brukes daglig i appene våre, vårt proof of concept.

Funksjoner

  • Selvstendig: én ANE, ingen kjernebibliotek eller avhengige ANE-er å legge til
  • Lagre, les, sjekk og fjern verdier med nøkkel
  • Verdiene overlever avinstallering og ny installasjon av appen
  • Kryptert av operativsystemet i systemets nøkkelring
  • Ett API for iOS og macOS
  • Enkle synkrone kall, ingen hendelser å håndtere

Støttede plattformer

iOS arm64
macOS Apple silicon · Intel

På andre plattformer returnerer isSupported false, slik at den samme koden kan bli værende i en plattformuavhengig app.

På Android gir KlugDeviceId det samme ankerpunktet som tåler ny installasjon: Android-enhets-ID-en forblir den samme etter at appen er avinstallert og installert på nytt.

Kom i gang

Legg utvidelsen til i applikasjonsbeskrivelsen din:

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

På macOS må appen signeres med et keychain access group-entitlement. På iOS trengs ikke noe ekstra entitlement.

Kodeeksempler

Tre komplette flyter. Alle kall er synkrone og returnerer med en gang; verdiene er strenger. Full dokumentasjon →

1 · Sjekk støtte og velg en reserveløsning
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 · Husk en gratis prøveperiode på tvers av nye installasjoner
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 · Lagre, les og fjern en verdi
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-oversikt

Keychain.getInstance()Returnerer den ene instansen.
isSupportedTrue på iOS. På macOS true når appen er signert med et keychain access group-entitlement; false på andre plattformer.
set(key, value)Lagrer en streng og erstatter en eksisterende. Returnerer true ved suksess; false hvis det ikke støttes eller nøkkel eller verdi er null.
get(key)Returnerer den lagrede verdien, eller en tom streng hvis det ikke finnes noen.
has(key)True hvis en verdi er lagret for nøkkelen.
remove(key)Fjerner verdien. Returnerer true når nøkkelen ikke lenger finnes.
LagringGeneriske passordelementer for appen din, lesbare etter første opplåsing av enheten, også i bakgrunnen.

Kjøp KlugKeychain

En årslisens for én AIR-applikasjon, med alle oppdateringer i 12 måneder. Etter betaling mottar du utvidelsen, ActionScript-biblioteket og dokumentasjonen på e-post, vanligvis innen én virkedag. Lisens og vilkår

Enkel
€19 / år
  • Lisens for én AIR-applikasjon
  • Alle oppdateringer i 12 måneder
  • Ingen støtte
Kjøp Enkel
Standard
€149 / år
  • Lisens for én AIR-applikasjon
  • Alle oppdateringer i 12 måneder
  • Svar på e-post innen 7 dager
Kjøp Standard
Prioritet
€299 / år
  • Lisens for én AIR-applikasjon
  • Alle oppdateringer i 12 måneder
  • Svar på e-post innen 48 timer
Kjøp Prioritet
Skatter og avgifter beregnes ved kassen av Link (Stripe). Du oppgir applikasjons-ID-en til AIR-appen din under kassen.

Krav

AIR SDK51.x (HARMAN)
iOSiOS 17 eller nyere
macOSmacOS 11 eller nyere
Signering (macOS)Keychain access group-entitlement