블로그 이미지
Every unexpected event is a path to learning for you.

카테고리

분류 전체보기 (2731)
Unity3D (814)
Programming (474)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (228)
협업 (57)
3DS Max (3)
Game (12)
Utility (136)
Etc (96)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (51)
Android (14)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday
03-29 07:22

1. pod 삭제

pod deintegrate

2. pod 클린

pod cache clean --all

3. pod 설치

pod install

 

 

[출처] https://eloquence-developers.tistory.com/149

 

[React Native] iOS pod 삭제, 클린, 설치 명령어

1. pod 삭제 pod deintegrate 2. pod 클린 pod cache clean --all 3. pod 설치 pod install

eloquence-developers.tistory.com

 

반응형
Posted by blueasa
, |

[에러 내용]

  • 기기에서 앱을 실행하면 'dyld: Library not loaded: @rpath/FBAudienceNetwork.framework' 오류와 함께 바로 중단됩니다. 이 오류는 앱에 Audience Network SDK를 포함하지 않았다는 것을 의미합니다. 타겟 설정으로 이동하고 '일반' 탭에서 'FBAudienceNetwork.xcframework'에 '포함 및 서명'을 선택하세요.

 

[해결방법]

출처 링크의 내용에서는 Xcode에서 처리하는 방법을 써놨는데, 유니티 사용하는 상황에서 추가 작업을 Xcode에서 하면 귀찮아져서 Xcode PostProcessor에서 아래 소스 추가함.

[추가한 소스코드] pbxProject.AddFrameworkToProject(targetGuid, "FBAudienceNetwork.framework", true);

 

 

[출처] https://developers.facebook.com/docs/audience-network/setting-up/platform-setup/ios/add-sdk?locale=ko_KR

 

SDK 추가 - Audience Network - 문서 - Facebook for Developers

SDK 버전 6.9.0 이상에 대한 문제 해결 6.9.0부터는 iOS Audience Network SDK에서 Swift를 지원합니다. SDK 설치 및 Swift 상호운용성과 관련하여 가장 일반적으로 발생하는 문제를 해결하려면 아래의 내용을

developers.facebook.com

 

반응형
Posted by blueasa
, |

Unity 2018.4.36f1

Xcode 13.4.1

 

[Error Message]

[Attribution] updatePostbackConversionValue returned error: 작업을 완료할 수 없습니다.(SKANErrorDomain 오류 10.).

 

 

iOS 빌드하고 실행에 별다른 문제는 없지만 위와 같은 에러가 떠서 뭔가하고 찾아봤는데,

Apple 측 답변으로는 에러메시지는 뜨지만 정상 동작하고 있다는 것 같다.

무시..

 

[참조]

Got an answer from Apple:

There has been an issue identified starting iOS 15.3, where the view through APIs may return an "unknown error", in cases when no error has actually occurred. In 15.3 that error is ASDErrorDomain:500. In 15.4 that error is now defined in the public SDK as SKANErrorDomain:SKANErrorUnknown (value 10). However, in those cases no functional error has actually occurred. The impression was recorded by the system.

We recommend that you ignore all errors of type ASDErrorDomain:500 / SKANErrorDomain:SKANErrorUnknown (value 10), as they are not real errors. The impression is recorded on the device regardless of those errors.

 

[출처] https://developer.apple.com/forums/thread/699442

 

SKAdImpression unknown 500 error | Apple Developer Forums

In iOS 15.3 method SKAdNetwork.startImpression() returns an error in completionHandler: MyTestApp(StoreKit)[560] : SKAdNetwork: Error in remote proxy while starting view-through impression: Error Domain=ASDErrorDomain Code=500 "SKAdNetwork: Unknown error"

developer.apple.com

 

반응형
Posted by blueasa
, |

[링크] https://hwangtaehyun.github.io/blog/react-native/ios-cycle-dependency-error/

 

Cycle in dependencies between targets ...

# ❎ 에러 발생 react-native project에서 ios프로젝트를 빌드 하다가 다음과 같은 에러를 만나게 되었다. > Cycle in dependencies between targets ... 왜 갑자기..? (나중에 생각해보니, 나도 모르게 뭔가 안되는

hwangtaehyun.github.io

 

반응형
Posted by blueasa
, |

----------------------------------------------------

Unity 2020.3.27f1

Xcode 13.2.1

FBAEMKit 12.2.1

FBSDKCoreKit 12.2.1

FBSDKCoreKit_Basics 12.2.1

FBSDKLoginKit 12.2.1
GoogleMobileAds 6.1.2
GoogleMobileAds-FacebookUnityAdapter-3.6.0

----------------------------------------------------

회사 플랫폼에서 Firebase Auth를 쓰면서 FBSDK(12.2.1) framework 가 들어가게 됐는데,

여기서 광고를 쓰기 위해 GoogleMoblieAds(6.1.2)를 추가하고,

페이스북 광고를쓰기위해 GoogleMobileAds의 미디에이션인 FacebookUnityAdapter(3.6.0)을 추가했는데..

Android는 잘되는데 iOS에서 에러 남.

 

플러그인 추가 진행 상황은 아래와 같다.

----------------------------------------------------

1) 플랫폼 SDK 추가하면서 FBSDK(12.2.1) 추가

  1.1)Plugins/iOS에 프레임워크 추가 돼 있음(FBAEMKit.framework/FBSDKCoreKit.framework/FBSDKCoreKit_Basics.framework/FBSDKLoginKit.framework)

 

2) GoogleMobileAds(6.1.2) 추가 -> 빌드 잘 됨

 

3) GoogleMobileAds-FacebookUnityAdapter(3.6.0) 추가 -> 빌드 에러

  3.1) [에러메시지] Undefined Symbols for architecture arm64: "_OBJC_CLASS_$_GAD...

  3.2) [해결방법] Unity Editor-Menu-External Dependency Manager-iOS Resolver-Settings : Link frameworks statically <- 체크

  3.3) [참조] https://blueasa.tistory.com/2587

 

4) 3) 해결 후, 빌드는 되는데 런타임에서 에러 남 -> 런타임 에러

  4.1) [에러메시지] Library not loaded: @rpath/FBAEMKit.framework...

    4.1.1) [추천] 4.2.4 방식 먼저 시도

  4.2.) [해결방법] 구글링 하다보니 아래와 같은 내용이 있음.

     4.2.1) General->Frameworks, Library, and Embedded Content. If it's "Do Not Embed", change to "Embed Without Signing"

      (참조: https://stackoverflow.com/questions/58144104/xcode11-dyld-library-not-loaded-reason-image-not-found)

    4.2.2) 빌드하고 수정하긴 그래서 XcodePostProcessor.cs에 아래 내용을 추가함.

        (처음엔 weak 파라미터를 false로 추가해봤었는데 여전히 런타임 에러 남)

      [추가소스]

      /// Initialize PbxProject
      var projectPath = pathToBuiltProject + "/Unity-iPhone.xcodeproj/project.pbxproj";
      PBXProject pbxProject = new PBXProject();
      pbxProject.ReadFromFile(projectPath);
      string targetGuid = pbxProject.GetUnityFrameworkTargetGuid();

 

      // 플랫폼 SDK에서 아래 4개 프레임워크를 추가해놔서 여기서도 4개 추가시킴

      pbxProject.AddFrameworkToProject(targetGuid, "FBAEMKit.framework", true); // weak 부분을 true로 넘김

      pbxProject.AddFrameworkToProject(targetGuid, "FBSDKCoreKit.framework", true);

      pbxProject.AddFrameworkToProject(targetGuid, "FBSDKCoreKit_Basics.framework", true);

      pbxProject.AddFrameworkToProject(targetGuid, "FBSDKLoginKit.framework", true);

 

    4.2.3) 위의 4.2.2) 방법이 안된다면 (스크립트로 프레임워크 추가를 안하고) 직접 넣어도 됨

              직접 넣는 건 아래 링크에서 원하는 버전의 FacebookSDK-Static_XCFramework를 다운받아서 추가.

              (iOS는 받아서 압축풀어보면 여러개의 폴더가 나오는데 ios-arm64(또는 ios-arm64_armv7) 폴더를 사용하면 된다)

              [링크] https://github.com/facebook/facebook-ios-sdk/releases

 

    4.2.3.1) static 프레임워크 추가하고  Undefined symbol: _vDSP 에러가 나면 Accelerate.framework도 추가하자.

                [참조] https://minmong.tistory.com/242

 

  4.2.4) 최근(2023-05-10)에 FacebookSDK 버전을 올리려고 확인 해보면서 FacebookSDK_Dynamic.xcframework를 적용해봤는데 이걸로 해도 잘되는 것 같다.

    4.2.4.1) FacebookSDK_Dynamic.xcframework 추가

    4.2.4.2) 기존 Dependencies.xml은 버전 맞춰 주기(난 15.0.0으로 맞춤)

      [참조] <iosPod name="FBSDKLoginKit" version="15.0.0" minTargetSdk="12.0"> </iosPod>

 

 

5) 4)까지 하고 빌드하니 런타임에서도 에러 안나고 잘 됨. -> 빌드 잘 됨

 

6) 빌드 성공!

 

 

[첨언]

결론적으로 GoogleMobileAds가 Static Framework을 강제(Link frameworks statically)하면서 생기는 문제로 보인다.

결국 GoogleMobileAds를 사용해야 된다면 dynamic framework 추가 방식은 불가능하므로, Facebook 관련 SDK 소스를 직접 추가(4.2.3)하는게 맞는 것 같다.

 

반응형
Posted by blueasa
, |

Unity 2020.3.27f1

GoogleMobileAds-v6.1.2

GoogleMobileAds-FacebookUnityAdapter-3.6.0

 

[에러메시지]

Undefined Symbols for architecture arm64: "_OBJC_CLASS_$_GAD...

 

[해결방법]

Unity Editor-Menu-External Dependency Manager-iOS Resolver-Settings : Link frameworks statically 체크

 

[참조] https://newreleases.io/project/github/googleads/googleads-mobile-unity/release/v6.0.0

  - [GooglemobileAds  6.0.0] You need to enable "Link frameworks statically" in Unity Editor -> Assets -> External Dependency Manager -> iOS Resolver -> Settings, or else the GMA plugin does not work.

 

-----------------------------------------------------------------------------------------------------

[펌]

Unity【iOS】「Undefined symbols for architecture arm64: _OBJC_CLASS_$_GADMediaView」エラーの対処法に関するメモ

 

Unityで開発したアプリをiOSでビルドした際に出たエラーの対処法がわかりづらかったのでメモ。

Xcodeでビルドした際に以下のエラーが出ました。

ld: warning: Could not find or use auto-linked framework 'AVFAudio'

Undefined symbols for architecture arm64:

  "_OBJC_CLASS_$_GADMediaView", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADRequest", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADNativeAdImageAdLoaderOptions", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADNativeAdViewAdOptions", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADBannerView", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADInterstitialAd", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADNativeAdView", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_kGADAdSizeMediumRectangle", referenced from:

      -[ALGoogleMediationAdapter adSizeFromAdFormat:withServerParameters:] in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADMobileAds", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_kGADAdSizeLeaderboard", referenced from:

      -[ALGoogleMediationAdapter adSizeFromAdFormat:withServerParameters:] in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADAdLoader", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth", referenced from:

      -[ALGoogleMediationAdapter adSizeFromAdFormat:withServerParameters:] in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

      +[ALGoogleMediationAdapter currentOrientationAchoredAdaptiveBannerSizeWithWidth:] in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADQueryInfo", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADExtras", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_kGADAdSizeBanner", referenced from:

      -[ALGoogleMediationAdapter adSizeFromAdFormat:withServerParameters:] in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_OBJC_CLASS_$_GADRewardedAd", referenced from:

      objc-class-ref in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

  "_kGADAdLoaderAdTypeNative", referenced from:

      -[ALGoogleMediationAdapter loadAdViewAdForParameters:adFormat:andNotify:] in AppLovinMediationGoogleAdapter(ALGoogleMediationAdapter.o)

ld: symbol(s) not found for architecture arm64

clang: error: linker command failed with exit code 1 (use -v to see invocation)

 

このエラーの厄介なところは、具体的にどんな対処をすればいいのかわからない点です。この部分でエラーが出ているよってことがわかればなおせますが、複数の要因により出ていると思われるエラーは修正することで泥沼にいっちゃうこともあるので慎重に対処するのが大事かなと思います。

 

 「Undefined symbols for architecture arm64: _OBJC_CLASS_$_GADMediaView」エラーに関する対処法

僕の環境では以下の方法で解決できました。(具体的なエラー原因がまだわかっていないので、上記のエラーが出た場合の対処法の一つ程度だと思ってもらえれば幸いです)

 

1.Unityで iOS ResolverのSettingsを開く

 

2.Link frameworks staticallyにチェックを入れる

3.iOSプロジェクトを出力して再ビルド

上記の方法でエラーが解消されました。

最近結構出るエラーなので、また発生したら今回のメモを参考にしたいと思います。

 

 

 

 

 お知らせ

謎解き推理ゲーム「イラスト探偵」を最近リリースしました!

もしよろしければダウンロードお願い致します!

 

[출처] https://develop.hateblo.jp/entry/unity-ios-error-build-arm64

 

Unity【iOS】「Undefined symbols for architecture arm64: _OBJC_CLASS_$_GADMediaView」エラーの対処法に関するメ

Unityで開発したアプリをiOSでビルドした際に出たエラーの対処法がわかりづらかったのでメモ。Xcodeでビルドした際に以下のエラーが出ました。ld: warning: Could not find or use auto-linked framework 'AVFAu

develop.hateblo.jp

 

반응형
Posted by blueasa
, |

[추가]

[Fixed] iOS: Fixed game objects' colors in light mode. (1379817)

2020.3.27f1 버전에서 해당 이슈가 수정되었다.

 

--------------------------------------------------------------------------------------------------------

Unity 2020.3.21f1에서 Unity 2020.3.22f1으로 업데이트 하고나니 Android는 문제없는데, iOS에서 기존에 발생하지 않던 쉐이더 문제가 생겼다.

 

[증상] 기존에 검은 느낌이던 텍스쳐가 약간 회색빛이 나옴

아래 이미지에서 A이던 느낌이 B느낌이 남

그래서 Unity 2020.3.21f1으로 내리니 다시 정상동작 하는걸 확인했다.

링크 내용을 보니 iOS Dark Mode 관련 버그라고 한다.

 

현재 임시로 해결하는 방법은 iOS Info.plist에서 강제로 Dark Mode로 셋팅 하는 방법이 있다고 한다.

 

버그가 수정될 때까지 Dark Mode로 셋팅하거나, Unity 2020.3.21f1 이하 버전을 사용해야 될 것 같다.

 

 

 

[Unity 소스상에서 Info.plist 수정]

var projectPath = pathToBuiltProject + "/Unity-iPhone.xcodeproj/project.pbxproj";
var plistPath = System.IO.Path.Combine(pathToBuiltProject, "Info.plist");
var plist = new PlistDocument();
plist.ReadFromFile(plistPath);

// [iOS15+Unity2020.3.22f1 이슈] Force Dark Mode(Automatic/Light/Dark) - Appearance
plist.root.SetString("UIUserInterfaceStyle", "Dark");

 

 

 

[Info.plist 수정 참조 링크] https://stackoverflow.com/questions/56537855/is-it-possible-to-opt-out-of-dark-mode-on-ios-13/64015200

 

Is it possible to opt-out of dark mode on iOS 13?

A large part of my app consists of web views to provide functionality not yet available through native implementations. The web team has no plans to implement a dark theme for the website. As such,...

stackoverflow.com

 

 

 

[출처] https://stackoverflow.com/questions/70239569/unity-shader-glitches-according-to-the-dark-mode-on-ios-15

 

Unity shader glitches according to the Dark Mode on iOS 15

I'm using a shader (code below) which allows me to turn an image color into a grayscale (with transparency if needed). Everything was perfect until I updated my device to iOS 15. Since that update,...

stackoverflow.com

 

반응형
Posted by blueasa
, |

[링크] https://violentjy.tistory.com/95

 

[iOS Archive] conflicting provisioning settings 어쩌구

아!!!!!!!!!!!!! 넘 화난당!!!!!!!!!!!!!!!!!!! TestFlight 연동을 해야하는데, App store 에 build 올리는 거에 대해 정리된 문서를 보다가 영어 문장을 너무 대충 읽어서 "니 앱이 적절한 Bundle ID를 가지고..

violentjy.tistory.com

 

[링크] https://phillip5094.github.io/ios/unity/Unity-iPhone-has-conflicting-provisioning-settings-%ED%95%B4%EA%B2%B0/

 

Unity-iPhone has conflicting provisioning settings 해결방법

2020.05.30

phillip5094.github.io

 

 

 

반응형
Posted by blueasa
, |

[링크] https://dev.classmethod.jp/articles/xcode-no-signing-certificate-ios-development-found-error/

 

[Xcode] アプリをArchiveしようとして「No signing certificate “iOS Development” found」エラーになった場合

App Storeに申請するためにアプリをArchiveしようとしたら 「No signing certificate "iOS Development" found」 という署名証明書のエラーが出てしまいました。 本記事ではこのエラーが起きた場合の解決方

dev.classmethod.jp

 

반응형
Posted by blueasa
, |

[링크] https://goodyoda.tistory.com/412

 

[iOS] Fastlane iOS 를 통한 TestFlight 자동빌드 & 자동배포

Fastlane iOS for TestFlight # 1. Xcode 커맨드 라인툴 설치 (Xcode 설치하며 이미 된 경우 제외) xcode-select --install # 2. 자동 빌드 툴 Fastlane 을 설치하고 구축한다. 
 https://docs.fastlane.tools/ge..

goodyoda.tistory.com

 

반응형
Posted by blueasa
, |