如果我使用Xamarin.Essentials首选项存储数据,那么如何在Android Splash活动中检索该数据?

问题描述 投票:0回答:2

如果使用Xamarin.Essentials Preferences类将应用程序首选项存储在键/值存储中。

Preferences.Set(“ my_key”,“ my_value”);

然后如何在应用程序的SplashActivity中将其取回?

[请注意,SO上有类似的问题/答案,已有9年历史了,答案指向不再存在的链接。

android xamarin xamarin.forms
2个回答
0
投票

在Android上,Xamarin.Essentials:首选项使用本机的“ SharedPreferences”,因此从SharedPreferences中取回通过Essentials存储的字符串,这将起作用:

var sharedName = $"{AppInfo.PackageName}.xamarinessentials.versiontracking";
var sharedPreferences = Application.Context.GetSharedPreferences(sharedName, FileCreationMode.Private);
var value = sharedPreferences.GetString(yourKey, null);

您可以通过以下链接查看Essentials的Android实现,以查看Xamarin的代码:

re:https://github.com/xamarin/Essentials/blob/develop/Xamarin.Essentials/Preferences/Preferences.android.cs

Note:我不相信Xamarin.Essentials Preferences或VersionTracking都使用初始化的Forms应用程序,因此您可以直接在SplashActivity中“直接”引用Essentials's Preferences API,而不是直接使用使用本地调用。


0
投票

让我们先说说Android Splash屏幕是常规的Android活动。

此外,Xamarin.Essentials软件包作为Xamarin.Android项目的一部分安装,允许您像在Shared项目中一样使用它。

如上所述,您可以使用Xamarin.Essentials从Android项目中检索您的偏好设置,例如:

bool isNewClient = Xamarin.Essentials.Preferences.Get("Key", defaultValue: true);

希望有帮助。-

© www.soinside.com 2019 - 2024. All rights reserved.