【问题标题】:"unrecognized selector sent to instance" error occured from AppLovin SDK for iOSAppLovin SDK for iOS 发生“无法识别的选择器发送到实例”错误
【发布时间】:2017-01-03 05:03:28
【问题描述】:

我正在尝试以下步骤来集成 AppLovin for iOS,但出现错误您知道如何解决此问题吗?

  1. 下载 AppLovin SDK for iOS 并将 AppLovinSDK.framework 拖到我的项目中。
  2. 添加依赖框架。
    • 广告支持
    • AVFoundation
    • CoreGraphics
    • CoreMedia
    • 核心电话
    • StoreKit(新)
    • 系统配置
    • UIKit
    • WebKit(可选)
  3. 将我的 AppLoin SDK 密钥添加到 info.plist。
  4. 将初始化 sn-ps 添加到 AppDelegate.m。

    #import <AppLovinSDK/AppLovinSDK.h>
    // ...
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        // Override point for customization after application launch.
        [ALSdk initializeSdk];
        return YES;
    }
    
  5. 添加 sn-ps 以向 ViewController.m 展示广告。

    #import <AppLovinSDK/AppLovinSDK.h>
    // ...
    - (void)viewDidLoad {
        [super viewDidLoad];
        if([ALInterstitialAd isReadyForDisplay]){
            [ALInterstitialAd show];
        }
        else{
            NSLog(@"Failed");
        }
    }
    
  6. 运行应用程序并出现以下堆栈跟踪错误:

    2017-01-03 11:09:58.437 AppLovinSample[80329:1731987] -[NSTaggedPointerString al_containsSubstring:]: unrecognized selector sent to instance 0xa0045564954414e6
    2017-01-03 11:09:58.458 AppLovinSample[80329:1731987] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSTaggedPointerString al_containsSubstring:]: unrecognized selector sent to instance 0xa0045564954414e6'
    *** First throw call stack:
    (
        0   CoreFoundation                      0x000000010a02c34b __exceptionPreprocess + 171
        1   libobjc.A.dylib                     0x0000000109a8d21e objc_exception_throw + 48
        2   CoreFoundation                      0x000000010a09bf34 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132
        3   CoreFoundation                      0x0000000109fb1c15 ___forwarding___ + 1013
        4   CoreFoundation                      0x0000000109fb1798 _CF_forwarding_prep_0 + 120
        5   AppLovinSample                      0x0000000106834ac0 -[ALSettingsManager loadFromUserSettings:] + 1295
        6   AppLovinSample                      0x00000001068327f4 -[ALSdk(Private) initWithKey:usingSettings:] + 1446
        7   AppLovinSample                      0x0000000106831799 +[ALSdk sharedWithKey:settings:] + 181
        8   AppLovinSample                      0x00000001068314d7 +[ALSdk shared] + 120
        9   AppLovinSample                      0x000000010683143a +[ALSdk initializeSdk] + 31
        10  AppLovinSample                      0x00000001067fe75c -[AppDelegate application:didFinishLaunchingWithOptions:] + 92
        11  UIKit                               0x0000000106fbb68e -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 290
        12  UIKit                               0x0000000106fbd013 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 4236
        13  UIKit                               0x0000000106fc33b9 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1731
        14  UIKit                               0x0000000106fc0539 -[UIApplication workspaceDidEndTransaction:] + 188
        15  FrontBoardServices                  0x000000011192576b __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 24
        16  FrontBoardServices                  0x00000001119255e4 -[FBSSerialQueue _performNext] + 189
        17  FrontBoardServices                  0x000000011192596d -[FBSSerialQueue _performNextFromRunLoopSource] + 45
        18  CoreFoundation                      0x0000000109fd1311 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
        19  CoreFoundation                      0x0000000109fb659c __CFRunLoopDoSources0 + 556
        20  CoreFoundation                      0x0000000109fb5a86 __CFRunLoopRun + 918
        21  CoreFoundation                      0x0000000109fb5494 CFRunLoopRunSpecific + 420
        22  UIKit                               0x0000000106fbedb6 -[UIApplication _run] + 434
        23  UIKit                               0x0000000106fc4f34 UIApplicationMain + 159
        24  AppLovinSample                      0x00000001067fe9ef main + 111
        25  libdyld.dylib                       0x000000010e70a68d start + 1
    )
    libc++abi.dylib: terminating with uncaught exception of type NSException
    

Here 是关于如何集成 AppLovin SDK for iOS 的文档。 (它应该已登录。)

【问题讨论】:

  • 尝试放置断点并检查发生崩溃的确切位置。
  • 它在[ALSdk initializeSdk]; 崩溃。根据堆栈跟踪,看起来[ALSettingsManager loadFromUserSettings:] 是崩溃点。但是我在网上找不到这个源代码。

标签: ios objective-c


【解决方案1】:

我没有意识到官方文档中的某些句子。为了解决这个问题,我需要启用 Xcode Flags。

启用 Xcode 标志 必须添加 -ObjC 标志才能使静态库(例如我们的 SDK)正确运行。

【讨论】:

  • 有趣。我的项目已经链接到另一个静态库,但由于某种原因,它在没有 -ObjC 标志的情况下工作。当我添加 AppLovinSDK 时它才开始崩溃。
猜你喜欢
  • 1970-01-01
  • 2011-12-24
  • 2014-02-18
  • 1970-01-01
  • 2012-03-14
  • 1970-01-01
  • 2012-04-04
  • 1970-01-01
相关资源
最近更新 更多