当前位置:首页 > 数据库 > SQlite

c# – 在2个不同的xamarin表单应用程序中共享本地SQLite数据库

我正在研究两种不同的Xamarin表单应用程序,我需要与第二个应用程序共享第一个应用程序的SQLite数据库.

我想为不同的xamarin表单应用程序实现单点登录方法,
用户只能在任何应用程序中登录,并且可以在两个应用程序中保持登录状态.

我在下面找到了android中我们可以共享数据库的统计数据: –
Share LocalDB in two different android app

现在我只需要在我的xamarin表单应用程序中使用类似的东西.

任何帮助将不胜感激.
谢谢 :)
请享用!

解决方法:

在iOS的情况下,它是沙箱,因此在应用程序之间共享数据非常困难.但仍有一些方法可以在应用程序之间共享数据.

在您的情况下,我建议您使用应用程序组.应用程序组允许不同的应用程序(或应用程序及其扩展)访问共享文件存储位置,有关更多详细信息,请参阅Working with App Groups.

Adding an App to an App Group之后,我们可以使用以下方法在应用程序之间共享数据:

NSUserDefaults的:

var userDefaults = new NSUserDefaults("<your group ID>", NSUserDefaultsType.SuiteName);
userDefaults.SetString("user123", "userId");
userDefaults.Synchronize();

的NSFileManager:

NSUrl appGroupDirectoryPath = NSFileManager.DefaultManager.GetContainerUrl("<your group Id>");
NSUrl dataBaseUrl = appGroupDirectoryPath.Append("dbName.db", false);
//You can try to copy your dataBase file to this url.

【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!