app_store 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -13,13 +13,18 @@ It provides way to search for applications, navigate through categories.
13
13
  @applications.first.title # => "PlugPlayer"
14
14
  @applications.first.price # => 4.99
15
15
 
16
- * Find an application by its id
16
+ * Find an application by id
17
17
  @fontpicker = AppStore::Application.find_by_id(327076783)
18
18
  @fontpicker.class # => AppStore::Application
19
19
  @fontpicker.title # => "FontPicker"
20
20
  @fontpicker.price # => 0.0
21
21
  @fontpicker.company.title # => "Etienne Segonzac"
22
22
 
23
+ * Medias
24
+ @fontpicker.screenshots # => [#<AppStore::Image:0x1017683e0 @width=320, @ra ...
25
+ @fontpicker.screenshots.first.url # => "http://a1.phobos.apple.com/us/r1000/017/Purple/c4/99/6d/mzl.jtoxfers.480x480-75.jpg"
26
+ @fontpicker.icon.url # => "http://a1.phobos.apple.com/us/r1000/026/Purple/39/40/54/mzl.yrrhymuu.100x100-75.jpg"
27
+
23
28
  * User reviews
24
29
  @remote = AppStore::Application.find_by_id(284417350)
25
30
  @remote.title # => "Remote"
@@ -59,10 +64,12 @@ It provides way to search for applications, navigate through categories.
59
64
  == INSTALL
60
65
  gem install app_store
61
66
 
67
+ == DOCUMENTATION
68
+
69
+ * http://rdoc.info/projects/jakimowicz/app_store/
70
+
71
+
62
72
  == TODO
63
- * handle medias (screenshots, icons, ...)
64
- * optimize navigation through lists
65
- * handle 'links' to avoid calling AppStore API for each items in a list
66
73
  * use FakeMechanize to unit test each calls
67
74
  * handle multiple store/language
68
75
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.3
1
+ 0.0.4
@@ -6,7 +6,7 @@ require "app_store/list"
6
6
  require "app_store/link"
7
7
 
8
8
  # Represents an application in the AppStore.
9
- # Available attributes:
9
+ # = Available attributes:
10
10
  # * <tt>average_user_rating</tt>: average rating from all user_reviews.
11
11
  # * <tt>user_rating_count</tt>: user_reviews count.
12
12
  # * <tt>release_date</tt>: release date on the AppStore for the application.
@@ -19,6 +19,36 @@ require "app_store/link"
19
19
  # * <tt>price</tt>: price of the application on the Apple AppStore.
20
20
  # * <tt>icon</tt>: Image object of the application icon.
21
21
  # * <tt>size</tt>: size of the application in byte.
22
+ # = Examples
23
+ # === Simple search
24
+ # @applications = AppStore::Application.search('upnp')
25
+ # @applications.class # => Array
26
+ # @applications.length # => 8
27
+ # @applications.first.title # => "PlugPlayer"
28
+ # @applications.first.price # => 4.99
29
+ #
30
+ # === Find an application by id
31
+ # @fontpicker = AppStore::Application.find_by_id(327076783)
32
+ # @fontpicker.class # => AppStore::Application
33
+ # @fontpicker.title # => "FontPicker"
34
+ # @fontpicker.price # => 0.0
35
+ # @fontpicker.company.title # => "Etienne Segonzac"
36
+ #
37
+ # === Medias
38
+ # @fontpicker.screenshots # => [#<AppStore::Image:0x1017683e0 @width=320, @ra ...
39
+ # @fontpicker.screenshots.first.url # => "http://a1.phobos.apple.com/us/r1000/017/Purple/c4/99/6d/mzl.jtoxfers.480x480-75.jpg"
40
+ # @fontpicker.icon.url # => "http://a1.phobos.apple.com/us/r1000/026/Purple/39/40/54/mzl.yrrhymuu.100x100-75.jpg"
41
+ #
42
+ # === User reviews
43
+ # @remote = AppStore::Application.find_by_id(284417350)
44
+ # @remote.title # => "Remote"
45
+ # @remote.user_reviews.length # => 10
46
+ #
47
+ # @review = @remote.user_reviews.first
48
+ #
49
+ # @review.user_name # => "Ebolavoodoo on Aug 27, 2009"
50
+ # @review.average_user_rating # => 1.0
51
+ # @review.text # => "Simply amazing. My new favorite app. Instantly responds. Easy to navigate and control. For those who say it doesn't work. Stinks to be you."
22
52
  class AppStore::Application < AppStore::Base
23
53
  ApplicationURL = "http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware"
24
54
 
@@ -42,7 +42,7 @@ module AppStore::Caller
42
42
  end
43
43
 
44
44
  def itunes_agent
45
- @itunes_agent ||= WWW::Mechanize.new
45
+ @itunes_agent ||= WWW::Mechanize.new { |a| a.user_agent = 'iTunes/9.0.1 (Macintosh; Intel Mac OS X 10.6.1) AppleWebKit/531.9' }
46
46
  end
47
47
 
48
48
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: app_store
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fabien Jakimowicz
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-11-06 00:00:00 +01:00
12
+ date: 2009-11-07 00:00:00 +01:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency