itunes_transporter_generator 0.2 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. data/Gemfile +3 -0
  2. data/LICENSE +19 -0
  3. data/README.md +250 -52
  4. data/doc/Itunes.html +198 -0
  5. data/doc/Itunes/Transporter.html +380 -0
  6. data/doc/Itunes/Transporter/Achievement.html +165 -0
  7. data/doc/Itunes/Transporter/AchievementLocale.html +165 -0
  8. data/doc/Itunes/Transporter/Generator.html +700 -0
  9. data/doc/Itunes/Transporter/Helpers.html +427 -0
  10. data/doc/Itunes/Transporter/InAppPurchase.html +165 -0
  11. data/doc/Itunes/Transporter/Interval.html +165 -0
  12. data/doc/Itunes/Transporter/Leaderboard.html +165 -0
  13. data/doc/Itunes/Transporter/LeaderboardLocale.html +165 -0
  14. data/doc/Itunes/Transporter/Locale.html +256 -0
  15. data/doc/Itunes/Transporter/Product.html +165 -0
  16. data/doc/Itunes/Transporter/PurchaseLocale.html +165 -0
  17. data/doc/Object.html +307 -0
  18. data/doc/Rakefile.html +112 -0
  19. data/doc/bin/itmsp.html +60 -0
  20. data/doc/created.rid +16 -0
  21. data/doc/example/achievements_rb.html +54 -0
  22. data/doc/example/in_app_purchases_rb.html +54 -0
  23. data/doc/example/leaderboards_rb.html +54 -0
  24. data/doc/example/test_rb.html +54 -0
  25. data/doc/images/brick.png +0 -0
  26. data/doc/images/brick_link.png +0 -0
  27. data/doc/images/bug.png +0 -0
  28. data/doc/images/bullet_black.png +0 -0
  29. data/doc/images/bullet_toggle_minus.png +0 -0
  30. data/doc/images/bullet_toggle_plus.png +0 -0
  31. data/doc/images/date.png +0 -0
  32. data/doc/images/find.png +0 -0
  33. data/doc/images/loadingAnimation.gif +0 -0
  34. data/doc/images/macFFBgHack.png +0 -0
  35. data/doc/images/package.png +0 -0
  36. data/doc/images/page_green.png +0 -0
  37. data/doc/images/page_white_text.png +0 -0
  38. data/doc/images/page_white_width.png +0 -0
  39. data/doc/images/plugin.png +0 -0
  40. data/doc/images/ruby.png +0 -0
  41. data/doc/images/tag_green.png +0 -0
  42. data/doc/images/wrench.png +0 -0
  43. data/doc/images/wrench_orange.png +0 -0
  44. data/doc/images/zoom.png +0 -0
  45. data/doc/index.html +110 -0
  46. data/doc/js/darkfish.js +116 -0
  47. data/doc/js/jquery.js +32 -0
  48. data/doc/js/quicksearch.js +114 -0
  49. data/doc/js/thickbox-compressed.js +10 -0
  50. data/doc/lib/itunes/transporter/achievement_rb.html +52 -0
  51. data/doc/lib/itunes/transporter/commands/package_rb.html +54 -0
  52. data/doc/lib/itunes/transporter/commands_rb.html +56 -0
  53. data/doc/lib/itunes/transporter/generator_rb.html +58 -0
  54. data/doc/lib/itunes/transporter/helpers_rb.html +60 -0
  55. data/doc/lib/itunes/transporter/in_app_purchase_rb.html +52 -0
  56. data/doc/lib/itunes/transporter/leaderboard_rb.html +54 -0
  57. data/doc/lib/itunes/transporter/locale_rb.html +52 -0
  58. data/doc/lib/itunes_rb.html +52 -0
  59. data/doc/rdoc.css +763 -0
  60. data/example/config copy.yaml +75 -0
  61. data/example/config.yaml +109 -4
  62. data/example/metadata.xml +201 -0
  63. data/example/sample sku.itmsp/metadata.xml +201 -0
  64. data/example/sample sku.itmsp/test.jpg +0 -0
  65. data/itmsp.gemspec +8 -4
  66. data/lib/itunes.rb +2 -2
  67. data/lib/itunes/transporter.rb +75 -0
  68. data/lib/itunes/transporter/commands.rb +1 -1
  69. data/lib/itunes/transporter/commands/package.rb +12 -9
  70. data/lib/itunes/transporter/generator.rb +291 -191
  71. data/lib/itunes/transporter/helpers.rb +236 -139
  72. data/lib/itunes/transporter/in_app_purchase.rb +16 -23
  73. data/lib/itunes/transporter/leaderboard.rb +0 -36
  74. data/lib/itunes/transporter/locale.rb +11 -11
  75. metadata +81 -7
  76. data/example/achievements.rb +0 -11
  77. data/example/in_app_purchases.rb +0 -9
  78. data/example/leaderboards.rb +0 -12
  79. data/example/test.rb +0 -5
  80. data/lib/itunes/transporter/achievement.rb +0 -9
@@ -0,0 +1,75 @@
1
+ provider: SampleCompany # optional if team_id is supplied
2
+ team_id: ABCDE12345 # optional if provider is supplied
3
+ vendor_id: 12345 # the application's SKU as definied in iTunes Connect
4
+ id_prefix: com.samplecompany.applicationname. # if supplied, this will be prefixed to achievement, leaderboard, and in-app purchase IDs
5
+ achievements: # the order in which achievements are defined will be the order in which they appear in Game Center
6
+ - id: first_achievement
7
+ name: First Achievement
8
+ points: 10
9
+ locales:
10
+ - name: en
11
+ title: First Achievement
12
+ before_earned_description: Complete a task
13
+ after_earned_description: Completed a task
14
+ achievement_after_earned_image: test.jpg
15
+
16
+ leaderboards: # the order in which leaderboards are defined will be the order in which they appear in Game Center
17
+ - default: true # only one leaderboard can be set as default.
18
+ id: top_scores
19
+ name: Top Scores
20
+ locales:
21
+ - name: en
22
+ title: Top Scores
23
+ formatter_suffix: ' Points' # note the space. This must be provided if you want a space between the value and suffix
24
+ formatter_suffix_singular: ' Point'
25
+ formatter_type: INTEGER_COMMA_SEPARATOR
26
+ leaderboard_image: test.jpg
27
+
28
+ purchases:
29
+ auto_renewable_purchases:
30
+ family:
31
+ name: Sample Product Group
32
+ review_screenshot_image: test.jpg
33
+ purchases:
34
+ - product_id: six_month_subscription
35
+ type: auto-renewable # products in a family group must be of auto-renewable type and be the same product but with different durations
36
+ duration: 6 Months # specific values defined in the app metadata specification outline
37
+ free_trial_duration: 1 Month
38
+ bonus_duration: 1 Month
39
+ cleared_for_sale: true
40
+ wholesale_price_tier: 5
41
+ - product_id: one_year_subscription
42
+ type: auto-renewable # products in a family group must be of auto-renewable type and be the same product but with different durations
43
+ duration: 1 Year # specific values defined in the app metadata specification outline
44
+ bonus_duration: 2 Months
45
+ cleared_for_sale: true
46
+ wholesale_price_tier: 9
47
+ locales:
48
+ - name: en
49
+ title: Sample Product Group
50
+ description: All your products in this sample group
51
+ publication_name: Sample Product Group
52
+ other_purchases:
53
+ - product_id: one_hundred_dollars
54
+ reference_name: 100 dollars
55
+ type: consumable
56
+ review_screenshot_image: test.jpg
57
+ cleared_for_sale: true
58
+ wholesale_price_tier: 1 # pricing tier matrix is available in Exhibit C of the iOS Paid Applications contract in the Contracts, Tax, and Banking section of iTunes Connect
59
+ locales:
60
+ - name: en
61
+ title: $100
62
+ description: An extra $100 for you
63
+ - product_id: new_level
64
+ reference_name: Unlocks a new level
65
+ type: non-consumable
66
+ review_screenshot_image: test.jpg
67
+ cleared_for_sale: true
68
+ intervals:
69
+ - start_date: 2013-01-31
70
+ end_date: 2013-02-28
71
+ wholesale_price_tier: 3
72
+ locales:
73
+ - name: en
74
+ title: Unlocks a new level
75
+ description: Try your luck at this new level
data/example/config.yaml CHANGED
@@ -1,4 +1,109 @@
1
- id_prefix: 'com.company.product.'
2
- provider: 'Company Name'
3
- team_id: 'Team ID'
4
- vendor_id: 'Vendor ID'
1
+ provider: SampleCompany # optional if team_id is supplied
2
+ team_id: ABCDE12345 # optional if provider is supplied
3
+ vendor_id: sample sku # the application's SKU as defined in iTunes Connect
4
+ id_prefix: com.samplecompany.applicationname. # if supplied, this will be prefixed to achievement, leaderboard, and in-app purchase IDs
5
+ versions:
6
+ - name: 1.1.3.1
7
+ locales:
8
+ - name: en-US
9
+ title: sampleApp
10
+ description: Description of sampleApp.
11
+ keywords:
12
+ - Sample
13
+ - App
14
+ version_whats_new: Version Whats New.
15
+ software_url: 'http://example.com'
16
+ privacy_url: 'http://example.com'
17
+ support_url: 'http://example.com'
18
+ screenshots:
19
+ - display_target: 'iOS-3.5-in'
20
+ file_name: 'test.jpg'
21
+
22
+ achievements: # the order in which achievements are defined will be the order in which they appear in Game Center
23
+ - id: first_achievement
24
+ name: First Achievement
25
+ points: 10
26
+ locales:
27
+ - name: en
28
+ title: First Achievement
29
+ before_earned_description: Complete a task
30
+ after_earned_description: Completed a task
31
+ achievement_after_earned_image: test.jpg
32
+
33
+ leaderboards: # the order in which leaderboards are defined will be the order in which they appear in Game Center
34
+ - default: true # only one leaderboard can be set as default.
35
+ id: top_scores
36
+ name: Top Scores
37
+ locales:
38
+ - name: en
39
+ title: Top Scores
40
+ formatter_suffix: ' Points' # note the space. This must be provided if you want a space between the value and suffix
41
+ formatter_suffix_singular: ' Point'
42
+ formatter_type: INTEGER_COMMA_SEPARATOR
43
+ leaderboard_image: test.jpg
44
+
45
+ purchases:
46
+ auto_renewable_purchases:
47
+ family:
48
+ name: Sample Product Group
49
+ review_screenshot_image: test.jpg
50
+ purchases:
51
+ - product_id: six_month_subscription
52
+ type: auto-renewable # products in a family group must be of auto-renewable type and be the same product but with different durations
53
+ duration: 6 Months # specific values defined in the app metadata specification outline
54
+ free_trial_duration: 1 Month
55
+ bonus_duration: 1 Month
56
+ cleared_for_sale: true
57
+ wholesale_price_tier: 5
58
+ - product_id: one_year_subscription
59
+ type: auto-renewable # products in a family group must be of auto-renewable type and be the same product but with different durations
60
+ duration: 1 Year # specific values defined in the app metadata specification outline
61
+ bonus_duration: 2 Months
62
+ cleared_for_sale: true
63
+ wholesale_price_tier: 9
64
+ locales:
65
+ - name: en
66
+ title: Sample Product Group
67
+ description: All your products in this sample group
68
+ publication_name: Sample Product Group
69
+ other_purchases:
70
+ - product_id: one_hundred_dollars
71
+ reference_name: 100 dollars
72
+ type: consumable
73
+ review_screenshot_image: test.jpg
74
+ cleared_for_sale: true
75
+ wholesale_price_tier: 1 # pricing tier matrix is available in Exhibit C of the iOS Paid Applications contract in the Contracts, Tax, and Banking section of iTunes Connect
76
+ locales:
77
+ - name: en
78
+ title: $100
79
+ description: An extra $100 for you
80
+ - product_id: new_level
81
+ reference_name: Unlocks a new level
82
+ type: non-consumable
83
+ review_screenshot_image: test.jpg
84
+ cleared_for_sale: true
85
+ intervals:
86
+ - start_date: 2013-01-31
87
+ end_date: 2013-02-28
88
+ wholesale_price_tier: 3
89
+ - start_date: 2013-03-01
90
+ end_date: 2013-05-15
91
+ wholesale_price_tier: 3
92
+ locales:
93
+ - name: en
94
+ title: Unlocks a new level
95
+ description: Try your luck at this new level
96
+ - product_id: another_level
97
+ reference_name: Unlocks another new level
98
+ type: non-consumable
99
+ review_screenshot_image: test.jpg
100
+ cleared_for_sale: true
101
+ intervals:
102
+ - end_date: 2013-08-13
103
+ wholesale_price_tier: 3
104
+ - start_date: 2013-08-14
105
+ wholesale_price_tier: 3
106
+ locales:
107
+ - name: en
108
+ title: Unlocks a new level
109
+ description: Try your luck at this new level
@@ -0,0 +1,201 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <package xmlns="http://apple.com/itunes/importer" version="software5.1">
3
+ <provider>SampleCompany</provider>
4
+ <team_id>ABCDE12345</team_id>
5
+ <software>
6
+ <vendor_id>sample sku</vendor_id>
7
+ <software_metadata>
8
+ <versions>
9
+ <version string="1.1.3.1">
10
+ <locales>
11
+ <locale name="en-US">
12
+ <title>sampleApp</title>
13
+ <description>Description of sampleApp.</description>
14
+ <keywords>
15
+ <keyword>Sample</keyword>
16
+ <keyword>App</keyword>
17
+ </keywords>
18
+ <version_whats_new>Version Whats New.</version_whats_new>
19
+ <software_url>http://example.com</software_url>
20
+ <privacy_url>http://example.com</privacy_url>
21
+ <support_url>http://example.com</support_url>
22
+ <software_screenshots>
23
+ <software_screenshot display_target="iOS-3.5-in" position="1">
24
+ <file_name>test.jpg</file_name>
25
+ <size>20092</size>
26
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
27
+ </software_screenshot>
28
+ </software_screenshots>
29
+ </locale>
30
+ </locales>
31
+ </version>
32
+ </versions>
33
+ <game_center>
34
+ <achievements>
35
+ <achievement position="1">
36
+ <achievement_id>com.samplecompany.applicationname.first_achievement</achievement_id>
37
+ <reference_name>First Achievement</reference_name>
38
+ <points>10</points>
39
+ <hidden>false</hidden>
40
+ <reusable>false</reusable>
41
+ <locales>
42
+ <locale name="en">
43
+ <title>First Achievement</title>
44
+ <before_earned_description>Complete a task</before_earned_description>
45
+ <after_earned_description>Completed a task</after_earned_description>
46
+ <achievement_after_earned_image>
47
+ <file_name>test.jpg</file_name>
48
+ <size>20092</size>
49
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
50
+ </achievement_after_earned_image>
51
+ </locale>
52
+ </locales>
53
+ </achievement>
54
+ </achievements>
55
+ <leaderboards>
56
+ <leaderboard default="true" position="1">
57
+ <leaderboard_id>com.samplecompany.applicationname.top_scores</leaderboard_id>
58
+ <reference_name>Top Scores</reference_name>
59
+ <sort_ascending>false</sort_ascending>
60
+ <locales>
61
+ <locale name="en">
62
+ <title>Top Scores</title>
63
+ <formatter_suffix> Points</formatter_suffix>
64
+ <formatter_suffix_singular> Point</formatter_suffix_singular>
65
+ <formatter_type>INTEGER_COMMA_SEPARATOR</formatter_type>
66
+ <leaderboard_image>
67
+ <file_name>test.jpg</file_name>
68
+ <size>20092</size>
69
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
70
+ </leaderboard_image>
71
+ </locale>
72
+ </locales>
73
+ </leaderboard>
74
+ </leaderboards>
75
+ </game_center>
76
+ <in_app_purchases>
77
+ <family name="Sample Product Group">
78
+ <locales>
79
+ <locale name="en">
80
+ <title>Sample Product Group</title>
81
+ <description>All your products in this sample group</description>
82
+ <publication_name>Sample Product Group</publication_name>
83
+ </locale>
84
+ </locales>
85
+ <review_screenshot>
86
+ <file_name>test.jpg</file_name>
87
+ <size>20092</size>
88
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
89
+ </review_screenshot>
90
+ <review_notes/>
91
+ <in_app_purchase>
92
+ <product_id>com.samplecompany.applicationname.six_month_subscription</product_id>
93
+ <duration>6 Months</duration>
94
+ <free_trial_duration>1 Month</free_trial_duration>
95
+ <bonus_duration>1 Month</bonus_duration>
96
+ <type>auto-renewable</type>
97
+ <products>
98
+ <product>
99
+ <cleared_for_sale>true</cleared_for_sale>
100
+ <wholesale_price_tier>5</wholesale_price_tier>
101
+ </product>
102
+ </products>
103
+ </in_app_purchase>
104
+ <in_app_purchase>
105
+ <product_id>com.samplecompany.applicationname.one_year_subscription</product_id>
106
+ <duration>1 Year</duration>
107
+ <bonus_duration>2 Months</bonus_duration>
108
+ <type>auto-renewable</type>
109
+ <products>
110
+ <product>
111
+ <cleared_for_sale>true</cleared_for_sale>
112
+ <wholesale_price_tier>9</wholesale_price_tier>
113
+ </product>
114
+ </products>
115
+ </in_app_purchase>
116
+ </family>
117
+ <in_app_purchase>
118
+ <product_id>com.samplecompany.applicationname.one_hundred_dollars</product_id>
119
+ <reference_name>100 dollars</reference_name>
120
+ <type>consumable</type>
121
+ <products>
122
+ <product>
123
+ <cleared_for_sale>true</cleared_for_sale>
124
+ <wholesale_price_tier>1</wholesale_price_tier>
125
+ </product>
126
+ </products>
127
+ <locales>
128
+ <locale name="en">
129
+ <title>$100</title>
130
+ <description>An extra $100 for you</description>
131
+ </locale>
132
+ </locales>
133
+ <review_screenshot>
134
+ <file_name>test.jpg</file_name>
135
+ <size>20092</size>
136
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
137
+ </review_screenshot>
138
+ </in_app_purchase>
139
+ <in_app_purchase>
140
+ <product_id>com.samplecompany.applicationname.new_level</product_id>
141
+ <reference_name>Unlocks a new level</reference_name>
142
+ <type>non-consumable</type>
143
+ <products>
144
+ <product>
145
+ <cleared_for_sale>true</cleared_for_sale>
146
+ <intervals>
147
+ <interval>
148
+ <start_date>2013-01-31</start_date>
149
+ <end_date>2013-02-28</end_date>
150
+ <wholesale_price_tier>3</wholesale_price_tier>
151
+ </interval>
152
+ </intervals>
153
+ </product>
154
+ </products>
155
+ <locales>
156
+ <locale name="en">
157
+ <title>Unlocks a new level</title>
158
+ <description>Try your luck at this new level</description>
159
+ </locale>
160
+ </locales>
161
+ <review_screenshot>
162
+ <file_name>test.jpg</file_name>
163
+ <size>20092</size>
164
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
165
+ </review_screenshot>
166
+ </in_app_purchase>
167
+ <in_app_purchase>
168
+ <product_id>com.samplecompany.applicationname.another_level</product_id>
169
+ <reference_name>Unlocks another new level</reference_name>
170
+ <type>non-consumable</type>
171
+ <products>
172
+ <product>
173
+ <cleared_for_sale>true</cleared_for_sale>
174
+ <intervals>
175
+ <interval>
176
+ <end_date>2013-02-28</end_date>
177
+ <wholesale_price_tier>3</wholesale_price_tier>
178
+ </interval>
179
+ <interval>
180
+ <start_date>2013-08-14</start_date>
181
+ <wholesale_price_tier>3</wholesale_price_tier>
182
+ </interval>
183
+ </intervals>
184
+ </product>
185
+ </products>
186
+ <locales>
187
+ <locale name="en">
188
+ <title>Unlocks a new level</title>
189
+ <description>Try your luck at this new level</description>
190
+ </locale>
191
+ </locales>
192
+ <review_screenshot>
193
+ <file_name>test.jpg</file_name>
194
+ <size>20092</size>
195
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
196
+ </review_screenshot>
197
+ </in_app_purchase>
198
+ </in_app_purchases>
199
+ </software_metadata>
200
+ </software>
201
+ </package>
@@ -0,0 +1,201 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <package xmlns="http://apple.com/itunes/importer" version="software5.1">
3
+ <provider>SampleCompany</provider>
4
+ <team_id>ABCDE12345</team_id>
5
+ <software>
6
+ <vendor_id>sample sku</vendor_id>
7
+ <software_metadata>
8
+ <versions>
9
+ <version string="1.1.3.1">
10
+ <locales>
11
+ <locale name="en-US">
12
+ <title>sampleApp</title>
13
+ <description>Description of sampleApp.</description>
14
+ <keywords>
15
+ <keyword>Sample</keyword>
16
+ <keyword>App</keyword>
17
+ </keywords>
18
+ <version_whats_new>Version Whats New.</version_whats_new>
19
+ <software_url>http://example.com</software_url>
20
+ <privacy_url>http://example.com</privacy_url>
21
+ <support_url>http://example.com</support_url>
22
+ <software_screenshots>
23
+ <software_screenshot display_target="iOS-3.5-in" position="1">
24
+ <file_name>test.jpg</file_name>
25
+ <size>20092</size>
26
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
27
+ </software_screenshot>
28
+ </software_screenshots>
29
+ </locale>
30
+ </locales>
31
+ </version>
32
+ </versions>
33
+ <game_center>
34
+ <achievements>
35
+ <achievement position="1">
36
+ <achievement_id>com.samplecompany.applicationname.first_achievement</achievement_id>
37
+ <reference_name>First Achievement</reference_name>
38
+ <points>10</points>
39
+ <hidden>false</hidden>
40
+ <reusable>false</reusable>
41
+ <locales>
42
+ <locale name="en">
43
+ <title>First Achievement</title>
44
+ <before_earned_description>Complete a task</before_earned_description>
45
+ <after_earned_description>Completed a task</after_earned_description>
46
+ <achievement_after_earned_image>
47
+ <file_name>test.jpg</file_name>
48
+ <size>20092</size>
49
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
50
+ </achievement_after_earned_image>
51
+ </locale>
52
+ </locales>
53
+ </achievement>
54
+ </achievements>
55
+ <leaderboards>
56
+ <leaderboard default="true" position="1">
57
+ <leaderboard_id>com.samplecompany.applicationname.top_scores</leaderboard_id>
58
+ <reference_name>Top Scores</reference_name>
59
+ <sort_ascending>false</sort_ascending>
60
+ <locales>
61
+ <locale name="en">
62
+ <title>Top Scores</title>
63
+ <formatter_suffix> Points</formatter_suffix>
64
+ <formatter_suffix_singular> Point</formatter_suffix_singular>
65
+ <formatter_type>INTEGER_COMMA_SEPARATOR</formatter_type>
66
+ <leaderboard_image>
67
+ <file_name>test.jpg</file_name>
68
+ <size>20092</size>
69
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
70
+ </leaderboard_image>
71
+ </locale>
72
+ </locales>
73
+ </leaderboard>
74
+ </leaderboards>
75
+ </game_center>
76
+ <in_app_purchases>
77
+ <family name="Sample Product Group">
78
+ <locales>
79
+ <locale name="en">
80
+ <title>Sample Product Group</title>
81
+ <description>All your products in this sample group</description>
82
+ <publication_name>Sample Product Group</publication_name>
83
+ </locale>
84
+ </locales>
85
+ <review_screenshot>
86
+ <file_name>test.jpg</file_name>
87
+ <size>20092</size>
88
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
89
+ </review_screenshot>
90
+ <review_notes/>
91
+ <in_app_purchase>
92
+ <product_id>com.samplecompany.applicationname.six_month_subscription</product_id>
93
+ <duration>6 Months</duration>
94
+ <free_trial_duration>1 Month</free_trial_duration>
95
+ <bonus_duration>1 Month</bonus_duration>
96
+ <type>auto-renewable</type>
97
+ <products>
98
+ <product>
99
+ <cleared_for_sale>true</cleared_for_sale>
100
+ <wholesale_price_tier>5</wholesale_price_tier>
101
+ </product>
102
+ </products>
103
+ </in_app_purchase>
104
+ <in_app_purchase>
105
+ <product_id>com.samplecompany.applicationname.one_year_subscription</product_id>
106
+ <duration>1 Year</duration>
107
+ <bonus_duration>2 Months</bonus_duration>
108
+ <type>auto-renewable</type>
109
+ <products>
110
+ <product>
111
+ <cleared_for_sale>true</cleared_for_sale>
112
+ <wholesale_price_tier>9</wholesale_price_tier>
113
+ </product>
114
+ </products>
115
+ </in_app_purchase>
116
+ </family>
117
+ <in_app_purchase>
118
+ <product_id>com.samplecompany.applicationname.one_hundred_dollars</product_id>
119
+ <reference_name>100 dollars</reference_name>
120
+ <type>consumable</type>
121
+ <products>
122
+ <product>
123
+ <cleared_for_sale>true</cleared_for_sale>
124
+ <wholesale_price_tier>1</wholesale_price_tier>
125
+ </product>
126
+ </products>
127
+ <locales>
128
+ <locale name="en">
129
+ <title>$100</title>
130
+ <description>An extra $100 for you</description>
131
+ </locale>
132
+ </locales>
133
+ <review_screenshot>
134
+ <file_name>test.jpg</file_name>
135
+ <size>20092</size>
136
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
137
+ </review_screenshot>
138
+ </in_app_purchase>
139
+ <in_app_purchase>
140
+ <product_id>com.samplecompany.applicationname.new_level</product_id>
141
+ <reference_name>Unlocks a new level</reference_name>
142
+ <type>non-consumable</type>
143
+ <products>
144
+ <product>
145
+ <cleared_for_sale>true</cleared_for_sale>
146
+ <intervals>
147
+ <interval>
148
+ <start_date>2013-01-31</start_date>
149
+ <end_date>2013-02-28</end_date>
150
+ <wholesale_price_tier>3</wholesale_price_tier>
151
+ </interval>
152
+ </intervals>
153
+ </product>
154
+ </products>
155
+ <locales>
156
+ <locale name="en">
157
+ <title>Unlocks a new level</title>
158
+ <description>Try your luck at this new level</description>
159
+ </locale>
160
+ </locales>
161
+ <review_screenshot>
162
+ <file_name>test.jpg</file_name>
163
+ <size>20092</size>
164
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
165
+ </review_screenshot>
166
+ </in_app_purchase>
167
+ <in_app_purchase>
168
+ <product_id>com.samplecompany.applicationname.another_level</product_id>
169
+ <reference_name>Unlocks another new level</reference_name>
170
+ <type>non-consumable</type>
171
+ <products>
172
+ <product>
173
+ <cleared_for_sale>true</cleared_for_sale>
174
+ <intervals>
175
+ <interval>
176
+ <end_date>2013-02-28</end_date>
177
+ <wholesale_price_tier>3</wholesale_price_tier>
178
+ </interval>
179
+ <interval>
180
+ <start_date>2013-08-14</start_date>
181
+ <wholesale_price_tier>3</wholesale_price_tier>
182
+ </interval>
183
+ </intervals>
184
+ </product>
185
+ </products>
186
+ <locales>
187
+ <locale name="en">
188
+ <title>Unlocks a new level</title>
189
+ <description>Try your luck at this new level</description>
190
+ </locale>
191
+ </locales>
192
+ <review_screenshot>
193
+ <file_name>test.jpg</file_name>
194
+ <size>20092</size>
195
+ <checksum type="md5">ff5bd97a5f40bb75a84884589ecbfc42</checksum>
196
+ </review_screenshot>
197
+ </in_app_purchase>
198
+ </in_app_purchases>
199
+ </software_metadata>
200
+ </software>
201
+ </package>