forked from sNKS/rhodes-api-docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
appapplication-api.txt
84 lines (57 loc) · 2.54 KB
/
appapplication-api.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# AppApplication API
Coordinate the startup of a Rhodes application. These methods are in the application.rb file.
## initialize
The initialize method is generated in the application.rb file. Put your application initialization code here.
:::ruby
class AppApplication < Rho::RhoApplication
def initialize
# put initialization code here
end
end
## AppApplication Class Methods
You can define the following AppApplication class methods in your application.rb file to listen for activation, deactivation, and upgrade events:
* on_ui_created
* on_ui_destroyed
* on_activate_app
* on_deactivate_app
* on_reinstall_config_update
## on_ui_created
Write the on_ui_created method in the application.rb file to run code after your application's UI is created (such as at application start).
:::ruby
def on_ui_created
# put your application UI creation code here
# for example, create tab bar:
# NativeBar.create(Rho::RhoApplication::TABBAR_TYPE, tabs)
super # To navigate to start_path from rhoconfig.txt
end
## on_ui_destroyed
Write the on_ui_destroyed method in the application.rb file to run code after your application's UI is destroyed (such as at application exit).
:::ruby
def on_ui_destroyed
# put your code here
# example:
# @forbid_ui_operations = true
end
## on_activate_app
Write the on_ui_destroyed method in the application.rb file to run code after your application is activated.
:::ruby
def on_activate_app
# put your application activation code here
end
## on_deactivate_app
Write the on_ui_destroyed method in the application.rb file to run code before your application goes to the background. Don't call any UI operations here, they'll be ignore (for example, `WebView.refresh`).
:::ruby
def on_deactivate_app
# to stop sync background thread call
# SyncEngine.stop_sync; SyncEngine.set_pollinterval(0)
# To stop local web server when application switched to
# background return "stop_local_server"
# return "stop_local_server"
end
## on_reinstall_config_update
Write the on_reinstall_config_update method in the application.rb file to run code when your application is upgraded.
`conflicts` is a hash name to an array of conflicted values (old local value, new upgrade value) for any conflicts for the properties in rhoconfig.txt. By default, the local values are kept in place, but you may overwrite them with new values in the `conflicts` array.
:::ruby
def on_reinstall_config_update(conflicts)
# puts "on_reinstall_config_update: #{conflicts}"
end