ios_android_toolbox 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,45 @@
1
+ #!/usr/bin/ruby
2
+
3
+ require 'rubygems'
4
+ require 'ios_android_toolbox/ios'
5
+
6
+ include IosAndroidToolbox
7
+
8
+ prev = ARGV.shift
9
+ replace = ARGV.shift
10
+
11
+ if prev.nil? and replace.nil?
12
+ puts "Usage: ios_replace_url_scheme [prev] replace"
13
+ exit
14
+ end
15
+
16
+ if replace.nil?
17
+ replace = prev
18
+ prev = nil
19
+ end
20
+
21
+ version_file = VersionController.version_file
22
+
23
+ ctrl = version_controller_for_version_file version_file
24
+
25
+ schemes = ctrl.url_schemes
26
+
27
+ exit if schemes.empty?
28
+
29
+ if prev.nil?
30
+ prev = schemes[0]
31
+ else
32
+ regex = Regexp.new(prev)
33
+ prevs = schemes.select do |scheme|
34
+ regex.match(scheme)
35
+ end
36
+
37
+ if prevs.length > 0
38
+ prev = prevs[0]
39
+ else
40
+ prev = nil
41
+ end
42
+ end
43
+
44
+ ctrl.replace_url_scheme(prev, replace)
45
+ ctrl.write_to_plist_file('-')
@@ -10,6 +10,8 @@ module IosAndroidToolbox
10
10
  class IosVersionController < VersionController
11
11
  VERSION_KEY = 'CFBundleVersion'
12
12
  SHORT_VERSION_KEY = 'CFBundleShortVersionString'
13
+ URL_TYPES_KEY = "CFBundleURLTypes"
14
+ URL_SCHEMES_KEY = "CFBundleURLSchemes"
13
15
 
14
16
  def self.find_project_info_candidates_for_dir(dir)
15
17
  candidates = []
@@ -53,6 +55,26 @@ module IosAndroidToolbox
53
55
  @dict[SHORT_VERSION_KEY] = @dict[VERSION_KEY] = next_version
54
56
  end
55
57
 
58
+ def url_types
59
+ @dict[URL_TYPES_KEY]
60
+ end
61
+
62
+ def url_schemes
63
+ schemes = url_types.collect do |ary|
64
+ ary[URL_SCHEMES_KEY]
65
+ end
66
+ schemes.flatten
67
+ end
68
+
69
+ def replace_url_scheme(prev, replace)
70
+ url_types.each do |url_type_dict|
71
+ schemes = url_type_dict[URL_SCHEMES_KEY]
72
+ schemes.each_index do |i|
73
+ schemes[i] = replace if prev == schemes[i]
74
+ end
75
+ end
76
+ end
77
+
56
78
  def write_to_plist_file(output_file)
57
79
  if output_file == '-'
58
80
  puts @dict.to_plist
@@ -1,3 +1,3 @@
1
1
  module IosAndroidToolbox
2
- VERSION = "0.0.6"
2
+ VERSION = "0.0.7"
3
3
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ios_android_toolbox
3
3
  version: !ruby/object:Gem::Version
4
- hash: 19
4
+ hash: 17
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 6
10
- version: 0.0.6
9
+ - 7
10
+ version: 0.0.7
11
11
  platform: ruby
12
12
  authors:
13
13
  - Igor Sales
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-02-02 00:00:00 Z
18
+ date: 2012-03-26 00:00:00 Z
19
19
  dependencies: []
20
20
 
21
21
  description: ""
@@ -30,6 +30,7 @@ executables:
30
30
  - inc_version.rb
31
31
  - inc_version_rc.rb
32
32
  - install_prov_profile.rb
33
+ - ios_replace_url_scheme.rb
33
34
  - start_topic_branch.rb
34
35
  extensions: []
35
36
 
@@ -47,6 +48,7 @@ files:
47
48
  - bin/inc_version.rb
48
49
  - bin/inc_version_rc.rb
49
50
  - bin/install_prov_profile.rb
51
+ - bin/ios_replace_url_scheme.rb
50
52
  - bin/start_topic_branch.rb
51
53
  - ios_android_toolbox.gemspec
52
54
  - lib/ios_android_toolbox.rb