我试图在游戏结束时存储一个值。
我使用的是https://github.com/matthewpalmer/Locksmith updateData 方法。
它在Github Repo上说道
以及替换现有数据,如果已经存在
,则将数据写入钥匙串尝试Locksmith.updateData(["某些键":"另一个值"],forUserAccount:" myUserAccount")
这就是我所拥有的:
Select
A.patid
,A.episode_number
,A.preadmit_admission_date
,A.program_code
,A.program_value
,A.c_date_of_birth
,A.guarantor_id
,max(A.cov_effective_date) as "MaxDate"
from(
Select
SA.patid
,SA.episode_number
,SA.preadmit_admission_date
,SA.program_code
,SA.program_value
,SA.c_date_of_birth
,BGE.guarantor_id
,BGE.cov_effective_date
From System.view_episode_summary_admit as "SA"
Left Outer Join
(Select
BG.patid
,BG.episode_number
,BG.guarantor_id
,BG.cov_effective_date
,BG.cov_expiration_date
from System.billing_guar_emp_data as "BG"
Inner Join
(Select patid, episode_number, preadmit_admission_date
from System.view_episode_summary_admit ) as "A"
On
(A.patid = BG.patid) and (A.episode_number = BG.episode_number)
Where
BG.cov_effective_date <= preadmit_admission_date and
(BG.cov_expiration_date >= preadmit_admission_date or
BG.cov_expiration_date Is Null)
) as "BGE"
on
(BGE.patid = SA.patid) and (BGE.episode_number = SA.episode_number)
Where
(program_code = '44282' or program_code = '44283' )
and preadmit_admission_date >= {?Start Date}
and preadmit_admission_date <= {?End Date}
) A
Group By Patid, Episode_number
此行打印(&#34;已结束(EndDateAndTimeString)&#34;)输出:
结束19:33:38 + 2016-08-05
此行打印(&#34;无法设置时间&#34;)不执行任何操作
此行打印(&#34;此行已播放&#34;)输出:
此行已
这一行:打印(&#34;存储为END :( timeBattleEnded)&#34;)什么都不做。
当我设置断点然后在控制台中键入 po dictionary 时,它会向我显示已设置但未设置此值的其他内容。
谁能明白为什么?
编辑:
所以,检查控制台后。它确实出现在我将信息保存到钥匙串后它就在那里。然后我切换视图并更新钥匙串中的另一个项目。这似乎删除了原来的一个,只保留新项目。两者都有不同的名称。
有什么想法吗?
答案 0 :(得分:3)
用马修帕尔默的确切话说:
只有一个数据存储在一个帐户下,因此当您调用updateData时,它将覆盖当前为该帐户存储的任何内容
所以,每当你调用Locksmith.updateData时,它基本上清除那里的所有数据,然后添加新值。您需要将密钥和值一起发送。
试试这个:
try Locksmith.updateData(["BattleEnd": "12345678", "Key2": "Value Two"], forUserAccount: "gameKeyChainValues")
答案 1 :(得分:1)
您在第一行中获取的字典不是不断更新的钥匙串视图,它只是您调用该方法时钥匙串中的内容的副本。更新钥匙串时,它不会更新。如果您在更新钥匙链后想要更新钥匙串,请在更新后再次致电loadDataForUserAccount()
。