Objective c 结构和目标C中多个目标上缺少DYSM错误

Objective c 结构和目标C中多个目标上缺少DYSM错误,objective-c,ios8,crashlytics,twitter-fabric,Objective C,Ios8,Crashlytics,Twitter Fabric,在我的应用程序中,有两个目标: Target 1 : MyApp - com.app.myapp Target 2 : MyAppQA - com.app.myappQa 用于Fabric注册的电子邮件Id对于两个目标都是相同的 我已经使用Fabric mac app创建了两个应用程序 在MyApp中,目标结构正在捕获所有崩溃并正常工作。 但是当我使用targetMyAppQA运行时,我得到了Missing DYSM文件错误。 我不明白为什么我的第二个目标没有捕捉到坠机 以下是我尝试过

在我的应用程序中,有两个目标:

 Target 1 : MyApp - com.app.myapp
 Target 2 : MyAppQA  - com.app.myappQa
用于
Fabric
注册的电子邮件Id对于两个目标都是相同的

我已经使用
Fabric mac app
创建了两个应用程序

MyApp
中,目标结构正在捕获所有崩溃并正常工作。 但是当我使用target
MyAppQA
运行时,我得到了
Missing DYSM文件错误。

我不明白为什么我的第二个目标没有捕捉到坠机

以下是我尝试过的方法:

  • 位代码-禁用(虽然我没有使用位代码,但即使在使用位代码时,我也进行了交叉检查)

  • 调试信息格式-设置为DWARF with dSYM文件(发行版和调试版)

  • 尝试手动上载DYSM文件(我通过归档项目并从右键单击菜单中选择ShowPackageContents获得了DYSM文件)


  • 我已经尝试了互联网上所有可能的解决方案。另外,我不想手动更新dysm,因为我现在没有iTunesConnect帐户。

    Mike来自Fabric

    一旦上传了dSYM,我们将开始重新处理过去7天的任何崩溃,因此现在应该可以看到它了

    对于上载dSYMs,包括查看上载流中的任何错误,您可以使用
    上载符号
    脚本,该脚本位于Fabric OS X应用程序中的
    Fabric.app/Contents/MacOS/upload symbols
    和Fabric CoCoCoapod有效负载中的
    $PODS\u ROOT/Fabric/upload symbols

    使用以下命令运行脚本以从给定文件夹上载所有DSYM:

    find <directory-to-search-for-dsyms> -name "*.dSYM" | xargs -I \{\} /path/to/upload-symbols -a <api-key> -p <platform> \{\}
    

    find-name“*.dSYM”| xargs-I\{\}/path/to/upload symbols-集成Crashlytics的一个步骤:-

    1.在可可荚下面添加

    pod 'Fabric'
    pod 'Crashlytics'
    
    2.将运行脚本添加到构建阶段(对于此步骤,您必须登录到fabric,然后才能获取API密钥)

    3.将API密钥添加到info.plist文件中

     <key>Fabric</key>
        <dict>
         <key>APIKey</key>
         <string>your_key</string>
         <key>Kits</key>
            <array>
             <dict>
                <key>KitInfo</key>
             <dict/>
            <key>KitName</key>
                <string>Crashlytics</string>
            </dict>
            </array>
        </dict>
    
    5.对于强制崩溃,在视图控制器的任何按钮单击事件上写入以下代码,不能写入应用程序代理文件

    [[Crashlytics sharedInstance] crash];
    
    6.更改生成设置:

     click on project target >>   Build setting >>  Chnage value of “Debug information Format” set it to “DWARF with dSYM file”
     click on project >>   Build setting >>  Chnage value of “Debug information Format” set it to “DWARF with dSYM file”
    
    7.如何使应用程序崩溃

     Xcode's debugger prevents us from processing crash reports. 
    
      To make sure a crash is reported during your simulator testing:
       ⁃    Launch simulator (Run your project and install app in simulator)
       ⁃    Press stop (stop from Xcode )
       ⁃    Launch your app and force a crash (Now do not run project, just open simulator and launch your app from simulator and press button that u write code for crash ` [[Crashlytics sharedInstance] crash];`)
       ⁃    Relaunch the app from simulator (again run app from simulator not from Xcode project)
       ⁃    See the crash report in the web dashboard
    

    请检查fabic dashboard中是否显示了崩溃日志???@Monikapel不,我在dashboard中没有任何崩溃日志。我已经在2天前集成了crashlytics。并成功整合。请稍候,我将提供所有详细步骤。请检查我的答案@RahulMishraThanks以获取您的答案。我在运行脚本阶段缺少引号,可能是因为我没有得到DYSM文件@Monikapatel欢迎您来@RahulMishrathanks mike,感谢您抽出时间。很抱歉反应太晚。虽然我在项目设置上做了一些更改,但它仍然有效。我禁用了位代码,并将调试和发布的调试信息格式更改为DWARF with dysm文件。我尝试了你的手动上传方式,它也能正常工作。:)嗨@Mike,我第一次做这个跑步脚本。如果你能举个例子,我会帮你的。thanks@MuhammadJabbar您可能应该提出一个新问题,这样任何讨论都不会与通过上传符号脚本上传dSYMs混淆。您好@MikeBonnell,谢谢您的回复。我找到了解决方案。@MikeBonnell dsym的位置将在运行时创建。那么如何在runscript中指定它?鉴于此,派生数据文件夹不是静态的,每次运行应用程序时都会创建。如果我错了,请更正我?
    [[Crashlytics sharedInstance] crash];
    
     click on project target >>   Build setting >>  Chnage value of “Debug information Format” set it to “DWARF with dSYM file”
     click on project >>   Build setting >>  Chnage value of “Debug information Format” set it to “DWARF with dSYM file”
    
     Xcode's debugger prevents us from processing crash reports. 
    
      To make sure a crash is reported during your simulator testing:
       ⁃    Launch simulator (Run your project and install app in simulator)
       ⁃    Press stop (stop from Xcode )
       ⁃    Launch your app and force a crash (Now do not run project, just open simulator and launch your app from simulator and press button that u write code for crash ` [[Crashlytics sharedInstance] crash];`)
       ⁃    Relaunch the app from simulator (again run app from simulator not from Xcode project)
       ⁃    See the crash report in the web dashboard