pindo 5.8.0 → 5.8.2

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: 981c02bf9dc73206866a586598642619054b8a82929a8ed54607ab2edf15604e
4
- data.tar.gz: fedcbff7e32b5db93492161228b293ec5d7f3558767fb5fb474c788959e527a3
3
+ metadata.gz: 3e2206bcec0036a22ba789cc964911c5fcf167832095f8ddfd60c0c44f146d2f
4
+ data.tar.gz: 02771de2bf5981c1e61c7f9f1d04f0cbb0a0ba04b468bf8d753b99893635be04
5
5
  SHA512:
6
- metadata.gz: 991ecbda504689b9f31c01a8a8a65991ca6193126c14525afc2fee081f039c39f5814076ea4047946e4846421d10964f0d4f3899774196e13f27f2a33fef5f57
7
- data.tar.gz: 578a35ce8f1840e366d3f2b7c4646c5d6c92a6729993acff3b6770f4603e5c22351e67640e4ae2fe17cea3f7dc291b3ec80bc72db99cb48919a1f478cd0dd724
6
+ metadata.gz: b55fc4b766fcf131a3f84e79f041c95d8571eaeb6d8a7605d3a42d9d55e99728e14bfb0056885fb06f8c0f2d3d0e439e844aef0714c419595b71ab5884c30db4
7
+ data.tar.gz: f3d928279be2eae39ed8600b24c7371644c51267834617351c9c73a6365a869b23a9b7e51a17df6b90094e5c8fea987ff713746ca8139df4ab8dc3749c8f2af9
@@ -87,7 +87,7 @@ module Pindo
87
87
  end
88
88
 
89
89
 
90
- if !result_status.nil? && !result_status["meta"].nil? && result_status["meta"]["code"].to_s.eql?("200") && !result_status["data"].nil? && result_status["data"]["is_success"]
90
+ if !result_status.nil? && !result_status["meta"].nil? && (result_status["meta"]["code"].to_s.eql?("0") || result_status["meta"]["code"].to_s.eql?("200")) && !result_status["data"].nil? && result_status["data"]["is_success"]
91
91
  puts "更新成功!!"
92
92
  puts
93
93
  end
@@ -129,10 +129,15 @@ module Pindo
129
129
 
130
130
  # ===== 从 JPS 下载并替换项目 Icon =====
131
131
  if app_info_obj && app_info_obj["projectIcon"] && !app_info_obj["projectIcon"].empty?
132
- Pindo::AndroidBuildConfigHelper.download_and_replace_icon_from_url(
132
+ icon_replace_success = Pindo::AndroidBuildConfigHelper.download_and_replace_icon_from_url(
133
133
  project_dir: pindo_project_dir,
134
134
  icon_url: app_info_obj["projectIcon"]
135
135
  )
136
+
137
+ # 如果 projectIcon 不为空且下载失败,抛出异常终止执行
138
+ unless icon_replace_success
139
+ raise Informative, "Icon 下载或替换失败,请检查 Icon URL 是否有效: #{app_info_obj["projectIcon"]}"
140
+ end
136
141
  else
137
142
  Funlog.warning("未配置 Icon URL,跳过 Icon 替换")
138
143
  end
@@ -175,10 +175,15 @@ module Pindo
175
175
 
176
176
  # ===== 从 JPS 下载并替换项目 Icon =====
177
177
  if app_info_obj && app_info_obj["projectIcon"] && !app_info_obj["projectIcon"].empty?
178
- Pindo::XcodeBuildConfig.download_and_replace_icon_from_url(
178
+ icon_replace_success = Pindo::XcodeBuildConfig.download_and_replace_icon_from_url(
179
179
  project_dir: pindo_project_dir,
180
180
  icon_url: app_info_obj["projectIcon"]
181
181
  )
182
+
183
+ # 如果 projectIcon 不为空且下载失败,抛出异常终止执行
184
+ unless icon_replace_success
185
+ raise Informative, "Icon 下载或替换失败,请检查 Icon URL 是否有效: #{app_info_obj["projectIcon"]}"
186
+ end
182
187
  else
183
188
  Funlog.warning("未配置 Icon URL,跳过 Icon 替换")
184
189
  end
@@ -196,7 +196,7 @@ module Pindo
196
196
  }
197
197
  )
198
198
 
199
- if result && result['code'] == 200
199
+ if result && (result['code'] == 0 || result['code'] == 200)
200
200
  puts "✅ 提交成功"
201
201
  print_upload_result(result)
202
202
  else
@@ -210,7 +210,7 @@ module Pindo
210
210
 
211
211
  result = jps_client.get_project_list(params: {})
212
212
 
213
- unless result && result['code'] == 200
213
+ unless result && (result['code'] == 0 || result['code'] == 200)
214
214
  raise Informative, "获取项目列表失败"
215
215
  end
216
216
 
@@ -21,19 +21,20 @@ module Pindo
21
21
  end
22
22
 
23
23
  def delete_libtarget_firebase_shell(project_path)
24
+ puts "[-] 开始检查并删除 Unity-iPhone下的Firebase Crashlytics脚本..."
24
25
  if File.directory?(File.join(project_path, 'Unity')) && File.exist?(File.join(project_path, 'Unity', 'Unity-iPhone.xcodeproj'))
25
26
  unity_project_path = File.join(project_path, 'Unity', 'Unity-iPhone.xcodeproj')
26
27
  xcdoe_unitylib_project = Xcodeproj::Project::open(unity_project_path)
27
28
  xcdoe_unitylib_project.targets.each do |target|
28
- if target.name == 'Unity-iPhone'
29
- target.shell_script_build_phases&.each do |phase|
30
- if phase.name.eql?("Crashlytics Run Script")
31
- target.build_phases.delete(phase)
32
- end
29
+ target.shell_script_build_phases&.each do |phase|
30
+ if phase.name.eql?("Crashlytics Run Script")
31
+ puts " 从target:#{target.name}中删除: #{phase.name} ..."
32
+ target.build_phases.delete(phase)
33
33
  end
34
34
  end
35
35
  end
36
36
  xcdoe_unitylib_project.save()
37
+ puts "[✔] 完成检查并删除 Unity-iPhone下的Firebase Crashlytics脚本..."
37
38
  end
38
39
  end
39
40
 
@@ -646,8 +646,8 @@ module Pindo
646
646
  indexNo: indexNo
647
647
  )
648
648
 
649
- if !result.nil? && (result["code"] == 200 || result["code"].to_s == "200")
650
- # 如果返回码是200,无论data是什么都认为成功
649
+ if !result.nil? && (result["code"] == 0 || result["code"] == 200 || result["code"].to_s == "0" || result["code"].to_s == "200")
650
+ # 如果返回码是0或200,无论data是什么都认为成功(支持新旧API响应码)
651
651
  if receiveType == "self"
652
652
  Funlog.instance.fancyinfo_success("测试信息已发送到飞书(个人)!")
653
653
  elsif receiveType == "chat"
@@ -1097,7 +1097,7 @@ module Pindo
1097
1097
 
1098
1098
  Funlog.instance.fancyinfo_start("正在重签名...")
1099
1099
  result = @pgyer_client.sign_project_package(packageId:package_id, certId:cert_id)
1100
- if !result.nil? && result["code"] == 200 && result["data"] == "success"
1100
+ if !result.nil? && (result["code"] == 0 || result["code"] == 200) && result["data"] == "success"
1101
1101
  Funlog.instance.fancyinfo_success("重签名成功!")
1102
1102
  return true
1103
1103
  else
data/lib/pindo/version.rb CHANGED
@@ -6,7 +6,7 @@ require 'time'
6
6
 
7
7
  module Pindo
8
8
 
9
- VERSION = "5.8.0"
9
+ VERSION = "5.8.2"
10
10
 
11
11
  class VersionCheck
12
12
  RUBYGEMS_API = 'https://rubygems.org/api/v1/gems/pindo.json'
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pindo
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.8.0
4
+ version: 5.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - wade
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-10-22 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: claide
@@ -115,20 +115,20 @@ dependencies:
115
115
  requirements:
116
116
  - - "~>"
117
117
  - !ruby/object:Gem::Version
118
- version: '1.3'
118
+ version: '1.4'
119
119
  - - ">="
120
120
  - !ruby/object:Gem::Version
121
- version: 1.3.0
121
+ version: 1.4.0
122
122
  type: :runtime
123
123
  prerelease: false
124
124
  version_requirements: !ruby/object:Gem::Requirement
125
125
  requirements:
126
126
  - - "~>"
127
127
  - !ruby/object:Gem::Version
128
- version: '1.3'
128
+ version: '1.4'
129
129
  - - ">="
130
130
  - !ruby/object:Gem::Version
131
- version: 1.3.0
131
+ version: 1.4.0
132
132
  - !ruby/object:Gem::Dependency
133
133
  name: rqrcode
134
134
  requirement: !ruby/object:Gem::Requirement
@@ -480,7 +480,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
480
480
  - !ruby/object:Gem::Version
481
481
  version: '0'
482
482
  requirements: []
483
- rubygems_version: 3.6.3
483
+ rubygems_version: 3.6.9
484
484
  specification_version: 3
485
485
  summary: easy work
486
486
  test_files: []