line / line-sdk-unity

Provides a modern way of implementing LINE APIs in Unity games, for iOS and Android.
https://developers.line.biz/
Apache License 2.0
118 stars 24 forks source link

xCode 15.3 - The signature of “LineSDKObjC.xcframework” cannot be verified. #70

Open VenzellCoder opened 4 months ago

VenzellCoder commented 4 months ago

Is it a security issue?

No

What did you do?

Try to build iOS on xCode 15.3

What did you expect?

Build successfully

What happened actually?

xCode gives an error The signature of “LineSDKObjC.xcframework” cannot be verified.

Your environment?

Unity 2022.3.19 xCode 15.3.1 (No problems with xCode 14.3)

Sample project

I use sample project from this repository

onevcat commented 4 months ago

Hi,

I just tried it and seems everything is working fine when exporting from Unity:

截屏2024-04-23 13 55 08

Please make sure you are not adding or deleting any files from the xcframework. Otherwise, the signature will not match what are contained when being signed and causes this error. (Sometimes maybe you are having a gitignore that may delete some files.)

Here is the full list of files in the framework, you can use du -a ./LineSDKObjC.xcframework to check if it is correct. (Any existing or lacking of .DS_Store is not causing an issue, but other files would fail the verification.)

du -a .
72  ./_CodeSignature/CodeResources
8   ./_CodeSignature/CodeDirectory
8   ./_CodeSignature/CodeRequirements-1
24  ./_CodeSignature/CodeSignature
8   ./_CodeSignature/CodeRequirements
120 ./_CodeSignature
32  ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/_CodeSignature/CodeResources
32  ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/_CodeSignature
152 ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Assets.car
360 ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Headers/LineSDKObjC-Swift.h
360 ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Headers
11032   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/LineSDKObjC
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/de.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/de.lproj
16  ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/ar.lproj/Localizable.strings
16  ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/ar.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/zh-Hans.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/zh-Hans.lproj
16  ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/ja.lproj/Localizable.strings
16  ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/ja.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/en.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/en.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/es.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/es.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/es-419.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/es-419.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/it.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/it.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/ms.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/ms.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/ko.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/ko.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/zh-Hant.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/zh-Hant.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/tr.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/tr.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/vi.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/vi.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/PrivacyInfo.xcprivacy
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/es-MX.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/es-MX.lproj
16  ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/ru.lproj/Localizable.strings
16  ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/ru.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/fr.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/fr.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/id.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/id.lproj
16  ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/th.lproj/Localizable.strings
16  ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/th.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/pt.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/pt.lproj
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/pt-PT.lproj/Localizable.strings
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle/pt-PT.lproj
200 ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Resource.bundle
296 ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/x86_64-apple-ios-simulator.swiftinterface
8480    ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/arm64-apple-ios-simulator.abi.json
296 ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface
672 ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/x86_64-apple-ios-simulator.swiftdoc
296 ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/arm64-apple-ios-simulator.swiftinterface
296 ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface
672 ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/arm64-apple-ios-simulator.swiftdoc
8480    ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/x86_64-apple-ios-simulator.abi.json
19488   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules/module.modulemap
19496   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Modules
8   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework/Info.plist
31280   ./ios-arm64_x86_64-simulator/LineSDKObjC.framework
34016   ./ios-arm64_x86_64-simulator/dSYMs/LineSDKObjC.framework.dSYM/Contents/Resources/DWARF/LineSDKObjC
34016   ./ios-arm64_x86_64-simulator/dSYMs/LineSDKObjC.framework.dSYM/Contents/Resources/DWARF
34016   ./ios-arm64_x86_64-simulator/dSYMs/LineSDKObjC.framework.dSYM/Contents/Resources
8   ./ios-arm64_x86_64-simulator/dSYMs/LineSDKObjC.framework.dSYM/Contents/Info.plist
34024   ./ios-arm64_x86_64-simulator/dSYMs/LineSDKObjC.framework.dSYM/Contents
34024   ./ios-arm64_x86_64-simulator/dSYMs/LineSDKObjC.framework.dSYM
34024   ./ios-arm64_x86_64-simulator/dSYMs
65304   ./ios-arm64_x86_64-simulator
4184    ./ios-arm64/BCSymbolMaps/2BAC3286-CC10-3FAA-BB02-6F84A3D39864.bcsymbolmap
4184    ./ios-arm64/BCSymbolMaps
152 ./ios-arm64/LineSDKObjC.framework/Assets.car
184 ./ios-arm64/LineSDKObjC.framework/Headers/LineSDKObjC-Swift.h
184 ./ios-arm64/LineSDKObjC.framework/Headers
34928   ./ios-arm64/LineSDKObjC.framework/LineSDKObjC
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/de.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/de.lproj
16  ./ios-arm64/LineSDKObjC.framework/Resource.bundle/ar.lproj/Localizable.strings
16  ./ios-arm64/LineSDKObjC.framework/Resource.bundle/ar.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/zh-Hans.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/zh-Hans.lproj
16  ./ios-arm64/LineSDKObjC.framework/Resource.bundle/ja.lproj/Localizable.strings
16  ./ios-arm64/LineSDKObjC.framework/Resource.bundle/ja.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/en.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/en.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/es.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/es.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/es-419.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/es-419.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/it.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/it.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/ms.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/ms.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/ko.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/ko.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/zh-Hant.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/zh-Hant.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/tr.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/tr.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/vi.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/vi.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/PrivacyInfo.xcprivacy
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/es-MX.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/es-MX.lproj
16  ./ios-arm64/LineSDKObjC.framework/Resource.bundle/ru.lproj/Localizable.strings
16  ./ios-arm64/LineSDKObjC.framework/Resource.bundle/ru.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/fr.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/fr.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/id.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/id.lproj
16  ./ios-arm64/LineSDKObjC.framework/Resource.bundle/th.lproj/Localizable.strings
16  ./ios-arm64/LineSDKObjC.framework/Resource.bundle/th.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/pt.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/pt.lproj
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/pt-PT.lproj/Localizable.strings
8   ./ios-arm64/LineSDKObjC.framework/Resource.bundle/pt-PT.lproj
200 ./ios-arm64/LineSDKObjC.framework/Resource.bundle
296 ./ios-arm64/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/arm64-apple-ios.swiftinterface
672 ./ios-arm64/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/arm64-apple-ios.swiftdoc
8480    ./ios-arm64/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/arm64-apple-ios.abi.json
296 ./ios-arm64/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule/arm64-apple-ios.private.swiftinterface
9744    ./ios-arm64/LineSDKObjC.framework/Modules/LineSDKObjC.swiftmodule
8   ./ios-arm64/LineSDKObjC.framework/Modules/module.modulemap
9752    ./ios-arm64/LineSDKObjC.framework/Modules
8   ./ios-arm64/LineSDKObjC.framework/Info.plist
45224   ./ios-arm64/LineSDKObjC.framework
16672   ./ios-arm64/dSYMs/LineSDKObjC.framework.dSYM/Contents/Resources/DWARF/LineSDKObjC
16672   ./ios-arm64/dSYMs/LineSDKObjC.framework.dSYM/Contents/Resources/DWARF
16672   ./ios-arm64/dSYMs/LineSDKObjC.framework.dSYM/Contents/Resources
8   ./ios-arm64/dSYMs/LineSDKObjC.framework.dSYM/Contents/Info.plist
16680   ./ios-arm64/dSYMs/LineSDKObjC.framework.dSYM/Contents
16680   ./ios-arm64/dSYMs/LineSDKObjC.framework.dSYM
16680   ./ios-arm64/dSYMs
66088   ./ios-arm64
8   ./Info.plist
131520  .
SnowDINN commented 3 months ago

If you run the .unitypackage file on the MAC, the build succeeds. This error occurs when running in Windows Unity Editor.

SokiSpiral commented 3 months ago

@SnowDINN I suffered from the same problem.

I deleted the imported files from .unitypackage in the Unity Editor on Windows and then re-imported them using .unitypackage on the Mac. Then the xcode build was successful. I owe it to you. Thanks a lot.

onevcat commented 3 months ago

Thanks for the feedback and workaround!

I would guess that Windows Editor is adding some files (for meta, maybe) that breaks the signature. I will check and see if there is a way to prevent this issue.