我想要做的是使用 Swift 在本机端读取我保存在颤振代码中的数据。
我尝试:
// Dart code using SharedPreference package
(await _sharedPreferences).setString('lastUser', userId);
// Native code on swift using UserDefaults
let userId: String = UserDefaults.standard.string(forKey: "flutter.lastUser") ?? ""
let userIdFlutter: String = UserDefaults.standard.string(forKey: "lastUser") ?? ""
在这两种情况下都返回一个空字符串。
更新:
它与扩展和组有关,因为在应用的主要部分(例如:com.name.name_app
)我可以找到商店值。
但是在扩展上(例如:com.name.name_app.Extension
)我什至找不到它甚至传递了主要部分的suitName(com.name.name_app
)
示例:
// AppDelegate.swift
let userId: String = UserDefaults.standard.string(forKey: "flutter.lastUser")
// userId is found
// OneSignalNotificationServiceExtension.swift
let userDefaults = USerDefaults(suitName: "com.name.name_app") {
let userId: String = UserDefaults.standard.string(forKey: "flutter.lastUser")
// userId is not found
}