Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 何时以及多久填充一次动态快捷方式(UIApplication.sharedApplication.shortcutItems)?_Ios_Objective C_3dtouch - Fatal编程技术网

Ios 何时以及多久填充一次动态快捷方式(UIApplication.sharedApplication.shortcutItems)?

Ios 何时以及多久填充一次动态快捷方式(UIApplication.sharedApplication.shortcutItems)?,ios,objective-c,3dtouch,Ios,Objective C,3dtouch,我正在阅读有关为支持3dTouch的设备在主屏幕上添加动态快捷方式的内容。它本质上归结为对UIApplication.sharedApplication的成员数组的读/写 我的问题是:这个数组是否持久化?如果我关闭或删除应用程序-是否保留快捷方式的配置 换句话说,我应该多久为我的应用程序设置一次所需的快捷方式?一旦每次发射?在每次转换到后台时?当您的应用程序安装在设备上时,它将保持不变。您可以在需要时进行更新。如果您有静态快捷方式,您可以在应用程序安装到设备上后立即使用它们,只需将它们包含在In

我正在阅读有关为支持3dTouch的设备在主屏幕上添加动态快捷方式的内容。它本质上归结为对
UIApplication.sharedApplication
的成员数组的读/写

我的问题是:这个数组是否持久化?如果我关闭或删除应用程序-是否保留快捷方式的配置


换句话说,我应该多久为我的应用程序设置一次所需的快捷方式?一旦每次发射?在每次转换到后台时?

当您的应用程序安装在设备上时,它将保持不变。您可以在需要时进行更新。如果您有静态快捷方式,您可以在应用程序安装到设备上后立即使用它们,只需将它们包含在
Info.plist
下的
UIApplicationShortcutItems

当您的应用程序安装到设备上时,它是持久的。您可以在需要时进行更新。如果您有静态快捷方式,您可以在应用程序安装到设备上后立即使用这些快捷方式,只需将它们包含在
ui应用程序快捷项下的
Info.plist
中即可。谢谢!是的,静态的很酷,但我需要添加一些动态的东西。那么我应该在哪里执行它?如果在某种应用程序初始化方法中,那么我需要检查项目是否已经存在-我将如何在那里做?比较一些标签?此外,安装应用程序时,UIApplication中的所有内容是否都保持不变?您可以在应用程序生命周期的任何时间更新快捷方式。一旦应用程序加载完毕,您可以在应用程序委托中执行此操作,并且可以在满足特定条件时执行此操作。这取决于你如何检查和维护它们。您可以为每个快捷方式分配唯一标识符,并使用它引用应用程序支持的不同类型的快捷方式,还可以在用户从主屏幕点击快捷方式时使用相同的标识符运行相应的操作。除此之外,当您需要重新创建主屏幕菜单时,立即替换所有快捷方式并没有什么错。所以你真的不必做任何复杂的管理。只需创建一个新的快捷方式数组,并在UIApplication上设置它们。作为UIApplication的持久性,系统会保存一些东西,并且在每次运行时都可用。从我的头顶:快捷方式和通知类别。如果您需要保留任何应用程序数据,则考虑使用NSUSER DEFAIL设置、密钥链、CORIDATA用于通用目的。谢谢!是的,静态的很酷,但我需要添加一些动态的东西。那么我应该在哪里执行它?如果在某种应用程序初始化方法中,那么我需要检查项目是否已经存在-我将如何在那里做?比较一些标签?此外,安装应用程序时,UIApplication中的所有内容是否都保持不变?您可以在应用程序生命周期的任何时间更新快捷方式。一旦应用程序加载完毕,您可以在应用程序委托中执行此操作,并且可以在满足特定条件时执行此操作。这取决于你如何检查和维护它们。您可以为每个快捷方式分配唯一标识符,并使用它引用应用程序支持的不同类型的快捷方式,还可以在用户从主屏幕点击快捷方式时使用相同的标识符运行相应的操作。除此之外,当您需要重新创建主屏幕菜单时,立即替换所有快捷方式并没有什么错。所以你真的不必做任何复杂的管理。只需创建一个新的快捷方式数组,并在UIApplication上设置它们。作为UIApplication的持久性,系统会保存一些东西,并且在每次运行时都可用。从我的头顶:快捷方式和通知类别。如果您需要保留任何应用程序数据,则考虑使用NSureDebug设置、用于密码的密钥链、用于一般目的的CORIDATA。