yptools 1.0.11 → 1.0.13

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.
@@ -0,0 +1,58 @@
1
+ # -*- coding: UTF-8 -*-
2
+
3
+ require 'pathname'
4
+ require 'colored'
5
+ require 'plist'
6
+ require 'json'
7
+ require_relative '../log/yp_log'
8
+ require_relative '../mgc/yp_makegarbagecode'
9
+
10
+
11
+ class YPAutoInit
12
+
13
+ def self.createObjcInitJson
14
+ yp_path = `pwd`
15
+ yp_path = yp_path.sub("\n","")
16
+ fileName = "YpImMessage.json"
17
+ filePath = yp_path + "/" + fileName
18
+
19
+ if File.exists?(filePath)
20
+ File.delete(filePath)
21
+ end
22
+
23
+ jsonContents = Array.new
24
+
25
+ jsonContentsJson = File.new(filePath, "w+")
26
+
27
+ jsonContents.push '{'
28
+ jsonContents.push ' "mode": "DAO",'
29
+ jsonContents.push ' "module": "YpImMessage",'
30
+ jsonContents.push ' "table": "yp_im_message",'
31
+ jsonContents.push ' "property": {'
32
+ jsonContents.push ' "id": "long",'
33
+ jsonContents.push ' "msgid": "int64_t",'
34
+ jsonContents.push ' "content": "NSString",'
35
+ jsonContents.push ' "sendTime": "NSDate",'
36
+ jsonContents.push ' "isMute": "BOOL",'
37
+ jsonContents.push ' "money": "CGFloat"'
38
+ jsonContents.push ' },'
39
+ jsonContents.push ' "index": {'
40
+ jsonContents.push ' "primary-autoincrement": "id"'
41
+ jsonContents.push ' },'
42
+ jsonContents.push ' "struct": {'
43
+ jsonContents.push ' "YpIdContent": ['
44
+ jsonContents.push ' "id",'
45
+ jsonContents.push ' "content"'
46
+ jsonContents.push ' ]'
47
+ jsonContents.push ' }'
48
+ jsonContents.push '}'
49
+
50
+ jsonContents.each { |lineText|
51
+ jsonContentsJson.syswrite(lineText);
52
+ jsonContentsJson.syswrite("\n");
53
+ }
54
+
55
+ jsonContentsJson.close
56
+
57
+ end
58
+ end
@@ -2,7 +2,11 @@ class YPHelp
2
2
 
3
3
  def self.message
4
4
  puts %q{
5
-
5
+
6
+ autocre: use [yptools autocre ...] 自动化工具命令
7
+ use [yptools autocre -objc ...] 根据 json 自动创建 Objective-C 数据库操作文件 .h|.m 文件。(依赖三方库 FMDB )
8
+ use [yptools autocre -init] 构建数据库操作文件的json模板
9
+
6
10
  install: use [yptools install mvvm] 为xcode创建OC语言的mvvm的模板
7
11
 
8
12
  mgc: use [yptools mgc suffix] 在当前目录生成垃圾代码(当前目录需要有.xcworkspace或者.xcodeproj目录)
@@ -58,54 +58,67 @@ class YPPackage
58
58
  end
59
59
 
60
60
  puts yp_infoPlistPath
61
- puts yp_mobileprovisionPath
62
61
 
63
- yp_mobileprovisionPlistPath = yp_resourceFile_app + "/" + "mobileprovision.plist"
64
- # 解析描述文件
65
- yp_mobileprovisionDatum = `security cms -D -i #{yp_mobileprovisionPath}`
66
-
67
- puts yp_mobileprovisionPlistPath
68
-
69
- yp_plistCreateFile = File.new(yp_mobileprovisionPlistPath,"w+")
70
- yp_plistCreateFile.syswrite(yp_mobileprovisionDatum)
71
- yp_plistCreateFile.close
72
-
73
- yp_log_success "============================================================"
74
-
75
- yp_plist = Plist.parse_xml(yp_mobileprovisionPlistPath)
76
-
77
- yp_appIDName = yp_plist["AppIDName"]
78
- yp_applicationIdentifierPrefix = yp_plist["ApplicationIdentifierPrefix"]
79
- yp_creationDate = yp_plist["CreationDate"]
80
- yp_platform = yp_plist["Platform"]
81
- yp_isXcodeManaged = yp_plist["IsXcodeManaged"]
82
- yp_developerCertificates = yp_plist["DeveloperCertificates"]
83
- yp_DER_Encoded_Profile = yp_plist["DER-Encoded-Profile"]
84
- yp_entitlements = yp_plist["Entitlements"]
85
- yp_expirationDate = yp_plist["ExpirationDate"]
86
- yp_name = yp_plist["Name"]
87
- yp_provisionsAllDevices = yp_plist["ProvisionsAllDevices"]
88
- yp_teamIdentifier = yp_plist["TeamIdentifier"]
89
- yp_teamName = yp_plist["TeamName"]
90
- yp_timeToLive = yp_plist["TimeToLive"]
91
- yp_uUID = yp_plist["UUID"]
92
- yp_version = yp_plist["Version"]
93
- yp_provisionedDevices = yp_plist["ProvisionedDevices"]
94
-
95
- yp_log_success " 输出描述文件embedded.mobileprovision"
96
- puts yp_mobileprovisionPlistPath
97
- puts ''
98
- yp_log_doing " 程序名称:\t#{yp_appIDName}"
99
- yp_log_doing " 团队名称:\t#{yp_teamName}"
100
- yp_log_doing " 创建时间:\t#{yp_creationDate}"
101
- yp_log_fail " 过期时间:\t#{yp_expirationDate}"
102
- yp_log_doing " 系统平台:\t#{yp_platform}"
103
-
104
- if yp_provisionedDevices.class == Array
105
- yp_log_doing " \n udids"
106
- for device in yp_provisionedDevices
107
- yp_log_doing " #{device}"
62
+ if yp_mobileprovisionPath.length > 0
63
+ puts yp_mobileprovisionPath
64
+ yp_mobileprovisionPlistPath = yp_resourceFile_app + "/" + "mobileprovision.plist"
65
+ # 解析描述文件
66
+ yp_mobileprovisionDatum = `security cms -D -i #{yp_mobileprovisionPath}`
67
+
68
+ puts yp_mobileprovisionPlistPath
69
+
70
+ yp_plistCreateFile = File.new(yp_mobileprovisionPlistPath,"w+")
71
+ yp_plistCreateFile.syswrite(yp_mobileprovisionDatum)
72
+ yp_plistCreateFile.close
73
+
74
+ yp_log_success "============================================================"
75
+
76
+ yp_plist = Plist.parse_xml(yp_mobileprovisionPlistPath)
77
+
78
+ if !yp_plist
79
+ yp_plist = {}
80
+ end
81
+
82
+ yp_appIDName = yp_plist["AppIDName"]
83
+ yp_applicationIdentifierPrefix = yp_plist["ApplicationIdentifierPrefix"]
84
+ yp_creationDate = yp_plist["CreationDate"]
85
+ yp_platform = yp_plist["Platform"]
86
+ yp_isXcodeManaged = yp_plist["IsXcodeManaged"]
87
+ yp_developerCertificates = yp_plist["DeveloperCertificates"]
88
+ yp_DER_Encoded_Profile = yp_plist["DER-Encoded-Profile"]
89
+ yp_entitlements = yp_plist["Entitlements"]
90
+ yp_expirationDate = yp_plist["ExpirationDate"]
91
+ yp_name = yp_plist["Name"]
92
+ yp_provisionsAllDevices = yp_plist["ProvisionsAllDevices"]
93
+ yp_teamIdentifier = yp_plist["TeamIdentifier"]
94
+ yp_teamName = yp_plist["TeamName"]
95
+ yp_timeToLive = yp_plist["TimeToLive"]
96
+ yp_uUID = yp_plist["UUID"]
97
+ yp_version = yp_plist["Version"]
98
+ yp_provisionedDevices = yp_plist["ProvisionedDevices"]
99
+
100
+ yp_log_success " 输出描述文件embedded.mobileprovision"
101
+ puts yp_mobileprovisionPlistPath
102
+ puts ''
103
+ yp_log_doing " 程序名称:\t#{yp_appIDName}"
104
+ yp_log_doing " 团队名称:\t#{yp_teamName}"
105
+ yp_log_doing " 创建时间:\t#{yp_creationDate}"
106
+ yp_log_fail " 过期时间:\t#{yp_expirationDate}"
107
+ yp_log_doing " 系统平台:\t#{yp_platform}"
108
+
109
+ if yp_provisionedDevices.class == Array
110
+ yp_log_doing " \n udids"
111
+ for device in yp_provisionedDevices
112
+ yp_log_doing " #{device}"
113
+ end
108
114
  end
115
+
116
+ puts ''
117
+
118
+ else
119
+ yp_log_success "============================================================"
120
+ yp_log_success "==================== 来自 AppStore 下载 ===================="
121
+
109
122
  end
110
123
 
111
124
  # yp_log_msg " 标识符🚀:\t#{yp_applicationIdentifierPrefix}"
@@ -118,7 +131,6 @@ class YPPackage
118
131
  # puts " 生存时间:\t#{yp_timeToLive}"
119
132
  # puts " uuid🚀🚀:\t#{yp_uUID}"
120
133
  # puts " 版本号🚀:\t#{yp_version}"
121
- puts ''
122
134
  yp_log_success "============================================================"
123
135
 
124
136
  # puts yp_infoPlistPath
data/lib/yptools.rb CHANGED
@@ -8,12 +8,33 @@ require_relative 'yptools/update/yp_update'
8
8
  require_relative 'yptools/xcodeproj/yp_xcodeproj'
9
9
  require_relative 'yptools/file/yp_updatecreatedate'
10
10
  require_relative 'yptools/package/yp_package'
11
+ require_relative 'yptools/autocre/yp_autocre'
12
+ require_relative 'yptools/autocre/yp_autoinit'
11
13
 
12
14
  class YPTools
13
15
 
14
16
  def self.cmd_dispatch(argvs)
15
17
  cmd = argvs[0]
16
18
  case cmd
19
+ when 'autocre'
20
+ if argvs.size > 1
21
+ name = argvs[1]
22
+ case name
23
+ when '-init'
24
+ self.autoinit
25
+ when '-objc'
26
+ if argvs.size > 2
27
+ path = argvs[2]
28
+ self.autocre path
29
+ else
30
+ yp_log_fail "'yptools autocre -objc..' 参数缺失"
31
+ self.help
32
+ end
33
+ end
34
+ else
35
+ yp_log_fail "'yptools autocre ..' 参数缺失"
36
+ self.help
37
+ end
17
38
  when 'install'
18
39
  if argvs.size > 1
19
40
  name = argvs[1]
@@ -99,6 +120,14 @@ class YPTools
99
120
  YPXcodeproj.xcodeproj(cmd)
100
121
  end
101
122
 
123
+ def self.autocre(name)
124
+ YPAutoCreate.createObjcSQL(name)
125
+ end
126
+
127
+ def self.autoinit
128
+ YPAutoInit.createObjcInitJson
129
+ end
130
+
102
131
  end
103
132
 
104
133
 
@@ -107,7 +136,7 @@ end
107
136
  # 垃圾代码自动添加
108
137
  # 自动打包功能
109
138
  # SDK自动生成
110
- # ipa 自动解析
139
+ # 根据db文件,自动创建OC数据库
111
140
 
112
141
  #puts "🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀";
113
142
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yptools
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.11
4
+ version: 1.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - chenghengsheng
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-09-22 00:00:00.000000000 Z
11
+ date: 2022-11-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -108,6 +108,20 @@ dependencies:
108
108
  - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: json
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
111
125
  description: Some useful tools make me happy
112
126
  email:
113
127
  - 2534550460@qq.com
@@ -118,6 +132,8 @@ extra_rdoc_files: []
118
132
  files:
119
133
  - bin/yptools
120
134
  - lib/yptools.rb
135
+ - lib/yptools/autocre/yp_autocre.rb
136
+ - lib/yptools/autocre/yp_autoinit.rb
121
137
  - lib/yptools/file/yp_updatecreatedate.rb
122
138
  - lib/yptools/help/yp_help.rb
123
139
  - lib/yptools/install/yp_install.rb