fastlane-plugin-zhuixi_build_app 1.0.2 → 1.0.6

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7fe2a794f18890b8fee8f284b2f82f6be269c081344d7b8a9dbefcca4f972a78
4
- data.tar.gz: f0f5896d4e538b9ddf31b65eea1af660c85c59b89196ecbcdbaaf272eff48f3e
3
+ metadata.gz: 75d72ab6ff7891ce8c66de90fd0ec51ba2ad3b4d5972386cf17273e1e027d1e1
4
+ data.tar.gz: c9335d5f0abf8b0774cf2babae44c69f19912a97b8b303c071ee86d6d42bcf01
5
5
  SHA512:
6
- metadata.gz: 2daaf3a7c685c50e2ed8cbb08c74f15fe399a732dfb63e119c8af5ef36f3c00e31927a9fb06fac2d8b115b3dd790bb69bf81f4cb3ee1949220f20fb891443e7b
7
- data.tar.gz: 79507ad983ab650ae583dc1f4f93cc2d6e5d1f3813fb43a6df9261bf63dfc3fa9406b0d81ebc81456e332acc18525de380162727e4ca1af3c07a5c075727b920
6
+ metadata.gz: b7452f8f39189e844ec28f367ce0caae3bad2cca4e605073f942651f61e6b24819705aa2dab631ae6e254ad3fb54a76844f78c64bfd4fa212f7eb08a43dc4b29
7
+ data.tar.gz: 02ba6a04716fe7b0eb0c9c0cc97db85e11d5d3effc1a8dd081e8a9daaa2e035cf128bab765ccce1ba7564274360c2a7b00a4387f5856c81f4f3ad7f8b7313f36
@@ -15,6 +15,8 @@ module Fastlane
15
15
  lane_context[:selectGameName] = app_file_config[:selectGameName]
16
16
  lane_context[:selectPlatformName] = app_file_config[:platform]
17
17
  lane_context[:ori_xcodeproj_path] = app_file_config[:ori_xcodeproj_path]
18
+ lane_context[:export_method] = app_file_config[:export_method]
19
+ lane_context[:provisioning_profile_name] = app_file_config[:provisioning_profile_name]
18
20
  UI.message("ZHUIXI---读取配置成功!app_file_path:\n#{app_file_path}")
19
21
  # 返回 account 和 password
20
22
  return { account: account, password: password }
@@ -108,15 +108,20 @@ module Fastlane
108
108
 
109
109
  # 如果 info_plist_data 没有 LSApplicationQueriesSchemes 配置,先创建一个空数组
110
110
  info_plist_data["LSApplicationQueriesSchemes"] ||= []
111
-
111
+ # 修改 Bundle Identifier 和 Display Name
112
+ info_plist_data["CFBundleIdentifier"] = lane_context[:configParams]["gamePackageName"]
113
+ info_plist_data["CFBundleDisplayName"] = lane_context[:configParams]["gamename"]
112
114
  # 3. 读取 TempInfo.plist 文件
113
115
  temp_info_plist_data = Plist.parse_xml(File.join(lane_context[:zhuixi_path], "TempInfo.plist"))
114
116
 
115
- # 添加 TempInfo.plist 中不存在的 LSApplicationQueriesSchemes 配置到 info.plist 文件
116
- temp_info_plist_data["LSApplicationQueriesSchemes"].each do |scheme|
117
- info_plist_data["LSApplicationQueriesSchemes"] << scheme unless info_plist_data["LSApplicationQueriesSchemes"].include?(scheme)
118
- end
117
+ # # 添加 TempInfo.plist 中不存在的 LSApplicationQueriesSchemes 配置到 info.plist 文件
118
+ # temp_info_plist_data["LSApplicationQueriesSchemes"].each do |scheme|
119
+ # info_plist_data["LSApplicationQueriesSchemes"] << scheme unless info_plist_data["LSApplicationQueriesSchemes"].include?(scheme)
120
+ # end
119
121
 
122
+ temp_info_plist_data.each do |key, value|
123
+ info_plist_data[key] = value
124
+ end
120
125
  # 5. 写入 info.plist 文件
121
126
  File.write(info_plist_absolute_path, info_plist_data.to_plist)
122
127
 
@@ -160,21 +165,39 @@ module Fastlane
160
165
  add_channel_sdk_library()
161
166
  end
162
167
  # 是否在动态库集合
163
- def self.isEmbedFramework(filename, setting)
164
- embedArc = ["boRanSDK.framework", "NyBugly.framework", "XHYSDK.framework"]
168
+ def self.isEmbedFramework(filename)
169
+ framework_path = filename.to_s
170
+ framework_name = File.basename(framework_path, ".*") # 提取 .framework 文件的名称
171
+ if lane_context[:platform_id] == 59 && framework_name == "boRanSDK"
172
+ # 在 .framework 目录中搜索与文件名相同的文件
173
+ file_path = Dir.glob("#{framework_path}/#{framework_name}").first
174
+
175
+ if file_path.nil?
176
+ UI.error("File not found for #{framework_name}.")
177
+ return false
178
+ end
165
179
 
166
- if !setting
167
- temp_name = filename.to_s
168
- else
169
- temp_name = filename.display_name
170
- end
171
- if !setting and temp_name.end_with?(embedArc[0], embedArc[1], embedArc[2])
172
- return true
173
- elsif setting and embedArc.include?(temp_name)
174
- return true
175
- else
176
- return false
180
+ # 使用 file 命令查看文件类型
181
+ file_output = sh("file #{file_path}")
182
+
183
+ # 检查文件类型中是否包含 "dynamic" 或 "shared",表示动态库
184
+ is_dynamic_library = file_output.include?("dynamic") || file_output.include?("shared")
185
+
186
+ if is_dynamic_library
187
+ # 文件是动态库
188
+ # 执行相应的操作
189
+ # ...
190
+ puts "文件是动态库 #{framework_name}"
191
+ return true
192
+ else
193
+ # 文件是静态库
194
+ # 执行其他操作
195
+ # ...
196
+ puts "文件是静态库 #{framework_name}"
197
+ return false
198
+ end
177
199
  end
200
+ return false
178
201
  end
179
202
 
180
203
  def self.add_channel_sdk_library()
@@ -235,7 +258,7 @@ module Fastlane
235
258
  end
236
259
  #项目中可能有多个copy files build phases,找到刚刚创建的那个,然后把xx.framework引入
237
260
 
238
- if !"".eql? lib_real_path and isEmbedFramework(filename, false)
261
+ if !"".eql? lib_real_path and isEmbedFramework(filename)
239
262
  lane_context[:target].copy_files_build_phases.each do |item|
240
263
  if item.name == "Embed Frameworks"
241
264
  #引入xx.framework
@@ -245,10 +268,8 @@ module Fastlane
245
268
  item.dst_subfolder_spec = "10"
246
269
  #勾上code sign on copy选项(默认是没勾上的)
247
270
  item.files.each do |e|
248
- if isEmbedFramework(e, true)
249
- e.settings = Hash.new
250
- e.settings["ATTRIBUTES"] = ["CodeSignOnCopy", "RemoveHeadersOnCopy"]
251
- end
271
+ e.settings = Hash.new
272
+ e.settings["ATTRIBUTES"] = ["CodeSignOnCopy", "RemoveHeadersOnCopy"]
252
273
  end
253
274
  end
254
275
  end
@@ -303,22 +324,33 @@ module Fastlane
303
324
  schemefile = File.basename(new_schemefilepath, ".xcscheme")
304
325
  end
305
326
  end
306
- lane_context[:project].save()
327
+ # lane_context[:project].save()
307
328
  # Find.find(File.join(lane_context[:cha_project_path], "xcuserdata")) do |schemefilepath|
308
329
  # if schemefilepath.include? ".xcscheme"
309
330
  # schemefile = schemefilepath
310
331
  # end
311
332
  # end
312
-
313
333
  # 执行 fastlane gym
334
+ # other_action.update_plist( # Updates the CLIENT_ID and GOOGLE_APP_ID string entries in the plist-file
335
+ # plist_path: File.join(lane_context[:zhuixi_path], "Info.plist"),
336
+ # block: proc do |plist|
337
+ # plist["CFBundleDisplayName"] = lane_context[:configParams]["gamename"]
338
+ # plist["CFBundleIdentifier"] = lane_context[:configParams]["gamePackageName"]
339
+ # end,
340
+ # )
341
+ lane_context[:project].save()
314
342
  puts lane_context[:configParams]
315
343
  timestamp = Time.now.strftime("%Y%m%d%H%M%S")
316
344
  output_name = lane_context[:configParams]["gamename"] + "_" + lane_context[:platform_id].to_s + "_" + lane_context[:selectPlatformName] + "_" + timestamp
317
345
  other_action.gym(
318
346
  project: lane_context[:cha_project_path],
319
- silent: true,
320
347
  output_name: output_name,
321
- include_symbols: false,
348
+ export_method: lane_context[:export_method],
349
+ export_options: {
350
+ provisioningProfiles: {
351
+ lane_context[:configParams]["gamePackageName"] => lane_context[:provisioning_profile_name],
352
+ },
353
+ },
322
354
  )
323
355
  end
324
356
  end
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
2
  module ZhuixiBuildApp
3
- VERSION = "1.0.2"
3
+ VERSION = "1.0.6"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-zhuixi_build_app
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - RedSevenMale
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-07 00:00:00.000000000 Z
11
+ date: 2023-08-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -169,7 +169,7 @@ files:
169
169
  - lib/fastlane/plugin/zhuixi_build_app/actions/zhuixi_build_app_action.rb
170
170
  - lib/fastlane/plugin/zhuixi_build_app/helper/zhuixi_build_app_helper.rb
171
171
  - lib/fastlane/plugin/zhuixi_build_app/version.rb
172
- homepage:
172
+ homepage: https://github.com/RedSevenMale/fastlane-plugin-zhuixi_build_app
173
173
  licenses:
174
174
  - MIT
175
175
  metadata: {}