cocoapods-devtool 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: f820b8bde3eed8f838fe361478d0db7291620e6a78e467599f2b154e1c3d52de
4
+ data.tar.gz: 5f797145997e0baa6633e0b26834d9063b23e6c15bc864e81ec60b03c0bd62cd
5
+ SHA512:
6
+ metadata.gz: 433c2ad65bb6be6eeff85bb8e0bb9b77bdeeaeef013b686cd23fe54db71b3264007e479cc891f32cec99aa46c7f11be687e520135efa142f3aedefa9c006ea48
7
+ data.tar.gz: 1505fa16884689615b6c1458d6d983470396c39a386e3adcf70e2d627bab3f89b3a15828ef2abe639d25566526843f3014cdaef8c00f79f6943b675ec9769158
@@ -0,0 +1,80 @@
1
+
2
+
3
+ require 'rubygems'
4
+ require 'xcodeproj'
5
+ require_relative '../setting/user_setting_tool'
6
+
7
+ module Pod
8
+ class Command
9
+ class Change < DevCommand
10
+ self.summary = '修改签名'
11
+ self.description = <<-DESC
12
+ 1. 将目录下所有的工程改成setting
13
+ DESC
14
+
15
+ def initialize(argv)
16
+ super
17
+ end
18
+
19
+ def validate!
20
+ super
21
+ settingTool = UserSetting::Setting.new()
22
+ help! "请先用pod devtool setting设置change_bundle_pre和dev_team" if settingTool.dev_team.empty? || settingTool.change_bundle_pre.empty?
23
+ end
24
+
25
+ def run
26
+ self.change_project
27
+ end
28
+
29
+ private
30
+
31
+ def change_project
32
+ settingTool = UserSetting::Setting.new()
33
+ settingTool.readSettingData()
34
+
35
+ curdir = Dir.pwd()
36
+
37
+ projectPaths = Dir[curdir+"/**/*.{xcodeproj}"]
38
+ podProjectPath = ""
39
+
40
+ projectPaths.delete(podProjectPath) unless podProjectPath.nil?
41
+ unless projectPaths.size > 0
42
+ puts "没有工程需要修改"
43
+ else
44
+ puts "开始修改以下项目签名"
45
+ projectPaths.each do |path|
46
+ if File.exist?(path)
47
+ puts path
48
+ project = Xcodeproj::Project.open(path)
49
+ self.change_setting(project)
50
+ end
51
+ end
52
+ puts "完成修改项目签名"
53
+ end
54
+
55
+ end
56
+
57
+ def change_setting(project)
58
+ settingTool = UserSetting::Setting.new()
59
+ project.targets.each do |target|
60
+ target.build_configurations.each do |config|
61
+ config.build_settings['CODE_SIGN_ENTITLEMENTS'] = ""
62
+ config.build_settings['DEVELOPMENT_TEAM'] = settingTool.dev_team
63
+ config.build_settings['DEVELOPMENT_TEAM[sdk=iphoneos*]'] = settingTool.dev_team
64
+ config.build_settings['PRODUCT_BUNDLE_IDENTIFIER'] = settingTool.change_bundle_pre + "."+ config.build_settings['PRODUCT_BUNDLE_IDENTIFIER'] unless config.build_settings['PRODUCT_BUNDLE_IDENTIFIER'] .nil?
65
+ config.build_settings['CODE_SIGN_STYLE'] = "Automatic"
66
+ config.build_settings['PROVISIONING_PROFILE'] = ""
67
+ config.build_settings['PROVISIONING_PROFILE_SPECIFIER'] = ""
68
+ config.build_settings['PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]'] = ""
69
+ config.build_settings['CODE_SIGN_IDENTITY'] = "Apple Development"
70
+ config.build_settings['CODE_SIGN_IDENTITY[sdk=iphoneos*]'] = "Apple Development"
71
+ config.build_settings['ProvisioningStyle'] = "Automatic"
72
+ end
73
+ end
74
+ project.save
75
+ end
76
+
77
+
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,38 @@
1
+ module Pod
2
+ class DevCommand < Command
3
+ # This is an example of a cocoapods plugin adding a top-level subcommand
4
+ # to the 'pod' command.
5
+ #
6
+ # You can also create subcommands of existing or new commands. Say you
7
+ # wanted to add a subcommand to `list` to show newly deprecated pods,
8
+ # (e.g. `pod list deprecated`), there are a few things that would need
9
+ # to change.
10
+ #
11
+ # - move this file to `lib/pod/command/list/deprecated.rb` and update
12
+ # the class to exist in the the Pod::Command::List namespace
13
+ # - change this class to extend from `List` instead of `Command`. This
14
+ # tells the plugin system that it is a subcommand of `list`.
15
+ # - edit `lib/cocoapods_plugins.rb` to require this file
16
+ #
17
+ # @todo Create a PR to add your plugin to CocoaPods/cocoapods.org
18
+ # in the `plugins.json` file, once your plugin is released.
19
+ #
20
+ self.summary = 'pod开发工具,用于修改工程签名等'
21
+
22
+ self.abstract_command = true
23
+ self.command = 'devtool'
24
+
25
+ # self.description = <<-DESC
26
+ # 开发工具
27
+ # DESC
28
+
29
+ # def self.options
30
+ # [
31
+ # ["--setkey", '查看设置和修改参数'],
32
+ # ["--change", '改变签名'],
33
+ # ]
34
+ # end
35
+
36
+
37
+ end
38
+ end
@@ -0,0 +1,76 @@
1
+ require_relative '../setting/user_setting_tool'
2
+ module Pod
3
+ class Command
4
+ # This is an example of a cocoapods plugin adding a top-level subcommand
5
+ # to the 'pod' command.
6
+ #
7
+ # You can also create subcommands of existing or new commands. Say you
8
+ # wanted to add a subcommand to `list` to show newly deprecated pods,
9
+ # (e.g. `pod list deprecated`), there are a few things that would need
10
+ # to change.
11
+ #
12
+ # - move this file to `lib/pod/command/list/deprecated.rb` and update
13
+ # the class to exist in the the Pod::Command::List namespace
14
+ # - change this class to extend from `List` instead of `Command`. This
15
+ # tells the plugin system that it is a subcommand of `list`.
16
+ # - edit `lib/cocoapods_plugins.rb` to require this file
17
+ #
18
+ # @todo Create a PR to add your plugin to CocoaPods/cocoapods.org
19
+ # in the `plugins.json` file, once your plugin is released.
20
+ #
21
+ class Setting < DevCommand
22
+ self.summary = '读取和设置参数'
23
+
24
+ self.description = <<-DESC
25
+ 1. pod setting将打印所有的设置\n
26
+ 2. 请以pod setkey key1=value1 key2=value2的方式设置参数
27
+ DESC
28
+
29
+ def initialize(argv)
30
+ @key_values = argv.arguments!
31
+ @debug_enable = argv.flag?("debug_enable",true)
32
+ @release_enable = argv.flag?("release_enable",true)
33
+ @distubution_enable = argv.flag?("distubution_enable",true)
34
+ @auto_sign_enable = argv.flag?("auto_sign_enable",true)
35
+
36
+ @settingTool = UserSetting::Setting.new()
37
+ @setting = @settingTool.readSettingData()
38
+ super
39
+ end
40
+
41
+ def validate!
42
+ super
43
+ @key_values.each do |value|
44
+ array = value.split("=")
45
+ help! value+' 不符合key=value的格式' unless array.size == 2
46
+ end
47
+ end
48
+
49
+ def run
50
+ if @key_values.empty?
51
+ UI.puts '当前的设置如下'
52
+ UI.puts @setting
53
+ else
54
+
55
+ @key_values.each do |value|
56
+ array = value.split("=")
57
+ @settingTool.set(array[0],array[1])
58
+ end
59
+ #mode 解析
60
+ debugMode = "Debug"
61
+ releaseMode = "Release"
62
+ distributionModel = "Distubution"
63
+ modes = Array.[](debugMode,releaseMode,distributionModel)
64
+
65
+ modes.delete(debugMode) unless @debug_enable
66
+ modes.delete(releaseMode) unless @release_enable
67
+ modes.delete(distributionModel) unless @distubution_enable
68
+ @settingTool.set("modes",modes)
69
+ #签名
70
+ @settingTool.save()
71
+ UI.puts "设置保存成功"
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,3 @@
1
+ require 'cocoapods-devtool/command/devtool'
2
+ require 'cocoapods-devtool/command/setting'
3
+ require 'cocoapods-devtool/command/change'
@@ -0,0 +1,3 @@
1
+ module CocoapodsDevtool
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,32 @@
1
+ require 'json'
2
+ module UserSetting
3
+ class Setting
4
+ attr_accessor :change_bundle_pre, :dev_team, :modes
5
+
6
+ def initialize
7
+ @jsonPath = '../../../user_setting.json'
8
+ path = File.expand_path(@jsonPath, __FILE__)
9
+ data = File.open(path) do |f|
10
+ JSON.load(f)
11
+ end
12
+ @settingData = data
13
+ @change_bundle_pre = @settingData["change_bundle_pre"]
14
+ @dev_team = @settingData["dev_team"]
15
+ @modes = @settingData["modes"]
16
+ end
17
+
18
+ def readSettingData()
19
+ @settingData
20
+ end
21
+
22
+ def set(key,value)
23
+ @settingData[key] = value
24
+ end
25
+
26
+ def save()
27
+ path = File.expand_path(@jsonPath, __FILE__)
28
+ json = JSON.generate(@settingData)
29
+ File.write(path,json)
30
+ end
31
+ end
32
+ end
@@ -0,0 +1 @@
1
+ require 'cocoapods-devtool/gem_version'
@@ -0,0 +1 @@
1
+ require 'cocoapods-devtool/command'
@@ -0,0 +1 @@
1
+ {"change_bundle_pre":"3","dev_team":"33","modes":["Debug","Release","Distubution"]}
metadata ADDED
@@ -0,0 +1,80 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: cocoapods-devtool
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - sam
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2022-10-30 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: A short description of cocoapods-devtool.
42
+ email:
43
+ - ''
44
+ executables: []
45
+ extensions: []
46
+ extra_rdoc_files: []
47
+ files:
48
+ - lib/cocoapods-devtool.rb
49
+ - lib/cocoapods-devtool/command.rb
50
+ - lib/cocoapods-devtool/command/change.rb
51
+ - lib/cocoapods-devtool/command/devtool.rb
52
+ - lib/cocoapods-devtool/command/setting.rb
53
+ - lib/cocoapods-devtool/gem_version.rb
54
+ - lib/cocoapods-devtool/setting/user_setting_tool.rb
55
+ - lib/cocoapods_plugin.rb
56
+ - lib/user_setting.json
57
+ homepage: https://github.com/EXAMPLE/cocoapods-devtool
58
+ licenses:
59
+ - MIT
60
+ metadata: {}
61
+ post_install_message:
62
+ rdoc_options: []
63
+ require_paths:
64
+ - lib
65
+ required_ruby_version: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ required_rubygems_version: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ requirements: []
76
+ rubygems_version: 3.1.4
77
+ signing_key:
78
+ specification_version: 4
79
+ summary: A longer description of cocoapods-devtool.
80
+ test_files: []