Så här lagrar du användarinställningar

Den här artikeln visar hur du lagrar användarens användargränssnittsinställningar eller användarinställningar via alternativen -preferences och -onPreferencesChanged Koncentrisani čitalac SDK.

När alternativet CookiePolicy SDK är inställt på Aktiverad lagrar Koncentrisani čitalac-programmet användarinställningar, till exempel textstorlek, temafärg och teckensnitt, med hjälp av cookies. Dessa cookies är lokala för en specifik webbläsare och enhet. Varje gång användaren startar Koncentrisani čitalac i samma webbläsare och enhet öppnas den med användarens inställningar från den senaste sessionen på enheten. Men om användaren öppnar Koncentrisani čitalac-appen på en annan webbläsare eller enhet konfigureras inställningarna ursprungligen med Koncentrisani čitalac standardinställningar och användaren måste ange sina inställningar igen för varje enhet de använder. Alternativen -preferences och -onPreferencesChanged Koncentrisani čitalac SDK är ett sätt för program att använda en användares inställningar i olika webbläsare och enheter, så att användaren får en konsekvent upplevelse oavsett var de använder programmet.

Först skickar Koncentrisani čitalac en -preferences sträng tillbaka till värdprogrammet varje gång användaren ändrar sina inställningar under den Koncentrisani čitalac sessionen genom att ange -onPreferencesChanged alternativet återanrops-SDK när Koncentrisani čitalac programmet startas. Värdprogrammet ansvarar sedan för att lagra användarinställningarna i sitt eget system. När samma användare sedan startar Koncentrisani čitalac igen kan värdprogrammet hämta användarens inställningar från lagringen och ange dem som -preferences sträng-SDK när du startar Koncentrisani čitalac-programmet, så att användarens inställningar återställs.

Den här funktionen kan användas som ett alternativt sätt att lagra användarinställningar när det inte är önskvärt eller möjligt att använda cookies.

Varning

Försök inte att programmatiskt ändra värdena för strängen -preferences som skickas till och från Koncentrisani čitalac-programmet eftersom detta kan orsaka oväntat beteende som resulterar i en försämrad användarupplevelse. Värdprogram bör aldrig tilldela ett anpassat värde till eller ändra strängen -preferences . När du använder strängalternativet -preferences använder du bara det exakta värde som returnerades från återanropsalternativet -onPreferencesChanged .

Aktivera lagring av användarinställningar

Parametern Koncentrisani čitalac SDK launchAsync options innehåller återanropet-onPreferencesChanged. Den här funktionen anropas när användaren ändrar sina inställningar. Parametern value innehåller en sträng som representerar användarens aktuella inställningar. Den här strängen lagras sedan, för den användaren, av värdprogrammet.

const options = {
    onPreferencesChanged: (value: string) => {
        // Store user preferences here
    }
};

ImmersiveReader.launchAsync(YOUR_TOKEN, YOUR_SUBDOMAIN, YOUR_DATA, options);

JSON-struktur för exempelinställningar

Här är ett exempel på hur parametern ser ut när den value parsas, tillsammans med typerna för varje fält:

{
    "displayOptionsState": {
        "textSize": "number",
        "fontFamily": "string",
        "textSpacing": "number",
        "formattingEnabled": "boolean",
        "theme": "string",
        "themeSetByUser": "boolean",
        "syllabificationEnabled": "boolean",
        "nounHighlightingEnabled": "boolean",
        "nounHighlightingColor": "string",
        "verbHighlightingEnabled": "boolean",
        "verbHighlightingColor": "string",
        "adjectiveHighlightingEnabled": "boolean",
        "adjectiveHighlightingColor": "string",
        "adverbHighlightingEnabled": "boolean",
        "adverbHighlightingColor": "string",
        "pictureDictionaryEnabled": "boolean",
        "posLabelsEnabled": "boolean"
    },
    "readAloudState": {
        "readAloudSpeed": "number",
        "voice": "string"
    },
    "translationState": {
        "shouldTranslateWords": "boolean",
        "translationLanguage": "string" // encoded JSON
    }
}

Och här exemplet för den translationLanguage avkodade JSON.

{
  "text": "string",
  "key": "string",
  "data": {
    "tlc": "string",
    "slc": "string"
  }
}

Läs in användarinställningar

Skicka in användarens inställningar till Koncentrisani čitalac-appen med hjälp -preferences av alternativet . Ett trivialt exempel för att lagra och läsa in användarens inställningar är följande:

const storedUserPreferences = localStorage.getItem("USER_PREFERENCES");
let userPreferences = storedUserPreferences === null ? null : storedUserPreferences;
const options = {
    preferences: userPreferences,
    onPreferencesChanged: (value: string) => {
        userPreferences = value;
        localStorage.setItem("USER_PREFERENCES", userPreferences);
    }
};

Gå vidare