Kullanıcı tercihlerini depolama
Bu makalede, -preferences ve -onPreferencesChanged Tam Ekran Okuyucu SDK seçenekleri aracılığıyla kullanıcının kullanıcı arabirimi ayarlarını veya kullanıcı tercihlerini depolama gösterilmektedir.
CookiePolicy SDK seçeneği Etkin olarak ayarlandığında, Tam Ekran Okuyucu uygulaması tanımlama bilgilerini kullanarak metin boyutu, tema rengi ve yazı tipi gibi kullanıcı tercihlerini depolar. Bu tanımlama bilgileri belirli bir tarayıcı ve cihaz için yereldir. Kullanıcı Tam Ekran Okuyucu aynı tarayıcı ve cihazda her başlattığında, kullanıcının bu cihazdaki son oturumundaki tercihleriyle birlikte açılır. Ancak, kullanıcı Tam Ekran Okuyucu uygulamasını farklı bir tarayıcıda veya cihazda açarsa, ayarlar başlangıçta Tam Ekran Okuyucu varsayılan ayarlarıyla yapılandırılır ve kullanıcının kullandığı her cihaz için tercihlerini yeniden ayarlaması gerekir. -preferences
ve -onPreferencesChanged
Tam Ekran Okuyucu SDK seçenekleri, uygulamaların kullanıcının tercihlerini çeşitli tarayıcılarda ve cihazlarda dolaşarak kullanıcının uygulamayı kullandığı her yerde tutarlı bir deneyim yaşamasını sağlar.
İlk olarak, Tam Ekran Okuyucu uygulamasını başlatırken geri çağırma SDK'sı seçeneğini sağlayarak-onPreferencesChanged
, Tam Ekran Okuyucu kullanıcı Tam Ekran Okuyucu oturumu sırasında tercihlerini her değiştirdiğinde konak uygulamaya bir -preferences
dize gönderir. Ardından konak uygulama, kullanıcı tercihlerini kendi sisteminde depolamakla sorumludur. Ardından, aynı kullanıcı Tam Ekran Okuyucu yeniden başlattığında, konak uygulama söz konusu kullanıcının tercihlerini depolama alanından alabilir ve Tam Ekran Okuyucu uygulamasını başlatırken dize SDK'sı seçeneği olarak -preferences
sağlayabilir ve böylece kullanıcının tercihleri geri yüklenir.
Bu işlev, tanımlama bilgilerini kullanırken kullanıcı tercihlerini depolamak için alternatif bir araç olarak kullanılabilir veya uygun değildir.
Dikkat
Tam Ekran Okuyucu uygulamasına gönderilen ve uygulamadan gönderilen dizenin -preferences
değerlerini program aracılığıyla değiştirmeyin, çünkü bu beklenmeyen bir davranışa neden olabilir ve bu da kullanıcı deneyiminin düşmesine neden olabilir. Konak uygulamaları hiçbir zaman dizeye özel bir değer atamamalı veya dizeyi -preferences
işlememelidir. Dize seçeneğini kullanırken -preferences
, yalnızca geri arama seçeneğinden -onPreferencesChanged
döndürülen tam değeri kullanın.
Kullanıcı tercihlerini depolamayı etkinleştirme
Tam Ekran Okuyucu SDK launchAsync options
parametresi geri çağırmayı -onPreferencesChanged
içerir. Bu işlev, kullanıcı tercihlerini her değiştireceği zaman çağrılır. value
parametresi, kullanıcının geçerli tercihlerini temsil eden bir dize içerir. Bu dize daha sonra bu kullanıcı için konak uygulaması tarafından depolanır.
const options = {
onPreferencesChanged: (value: string) => {
// Store user preferences here
}
};
ImmersiveReader.launchAsync(YOUR_TOKEN, YOUR_SUBDOMAIN, YOUR_DATA, options);
Örnek Tercihler JSON Yapısı
Ayrıştırıldığında parametrenin nasıl göründüğüne value
ve her alanın türlerine ilişkin bir örnek aşağıda verilmiştir:
{
"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
}
}
Ve burada kodu çözülen JSON örneği translationLanguage
.
{
"text": "string",
"key": "string",
"data": {
"tlc": "string",
"slc": "string"
}
}
Kullanıcı tercihlerini yükleme
seçeneğini kullanarak kullanıcının tercihlerini Tam Ekran Okuyucu uygulamasına geçirin-preferences
. Kullanıcının tercihlerini depolamak ve yüklemek için küçük bir örnek aşağıda verilmiştir:
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);
}
};