在“钛”中,以下两行代码之间有什么区别?
Ti.App.currentUser = "user1";
Ti.App.Properties.setString("currentUser", "user1");发布于 2016-03-03 08:08:36
Ti.App.Properties:
application模块用于将与应用程序相关的数据存储在超越应用程序会话和设备功率周期的属性/值对中。
tiapp.xml文件中的APIs可以使用这些API访问tiapp.xml文件中定义的App属性。app属性在根级<ti:app>元素和<property>元素中定义。使用name属性定义属性名称,并将值与<property>元素内联。例如,要定义一个名为foo的app属性,其值为42:
<?xml version="1.0" encoding="UTF-8"?>
<ti:app xmlns:ti="http://ti.appcelerator.org">
<property name="foo" type="string">42</property>
</ti:app>参考文献:http://docs.appcelerator.com/platform/latest/#!/api/Titanium.App.Properties
Ti.App.VariableName只为应用程序运行时存储一个变量,而不是持久变量。
顶层应用程序模块主要用于在运行时访问有关应用程序的信息,以及发送或侦听系统事件。
App模块公开了tiapp.xml文件中设置的许多属性。
在创建应用程序时,必须指定其中的三个属性,即应用程序名称、ID和URL。
虽然大多数值可以在创建项目后通过编辑tiapp.xml文件来更改,但是GUID是自动生成的,不应该更改。
更多细节Titanium.App
最后,如果要在tiapp.xml文件中存储和检索值,则应使用Titanium.App.Properties
发布于 2016-03-04 09:24:56
Abada在解释这种差异方面做得很好,但我要强调的是,您应该而不是向Ti.App这样的钛代理对象添加任何自定义属性。这是不良做法,因为它可能导致内存泄漏和不可预知的行为。这些对象不是100%的JS,而是到Obj-C/JAVA/C+的桥梁。
https://stackoverflow.com/questions/35763495
复制相似问题