sarriaroman / FabricPlugin

Fabric.io plugin for Cordova or Phonegap
MIT License
198 stars 159 forks source link

[iOS] Can't upload dSYMs to Fabric #44

Open hung-doan opened 8 years ago

hung-doan commented 8 years ago

I'm stuck, getting in this error:

It looks like we are missing dSYMs to process crashes for the versions below.

I try to upload dSYMs file to Fabric(through https://fabric.io website). But that site not working! It seem do nothing at all, It does not tell that if I select file progress is success, or If file upload is complete.

And does this plugin support to upload dSYMs to Fabric, automatically ? If not, Is there any command to upload dSYMs to Fabric?

nokrasnov commented 7 years ago

It seems that is not generated dsyms. Maybe we should use /lib/ios/Fabric.framework/run in build script phase block

hung-doan commented 7 years ago

@nokrasnov It generated dsyms but It did not upload your dsyms automatically.

Here is my solution: I update to lasest version (Fabric 1.6.7) and use upload-symbols tool, It works perfectly

https://github.com/hungdoan2/FabricPlugin/tree/feature-lastest-fabric-sdks/lib/ios

From Fabric 1.6.6, there is an upload-symbols tool is bundled within the CocoaPod. Then you can up load your dsyms manually Just follow this guide : https://docs.fabric.io/ios/crashlytics/missing-dsyms.html

If you want to stick with Fabric 1.6.5 you can download CocoaPod package from here, then extract upload-symbols tool from it. (I haven't tried yet, but I think It would work without any problem)

nokrasnov commented 7 years ago

I changed /lib/ios/Crashlytics.framework/run to /lib/ios/Fabric.framework/run and it helped me

hung-doan commented 7 years ago

@nokrasnov Could you explain more about how to use /lib/ios/Fabric.framework/run. I tried to use /lib/ios/Fabric.framework/run and /lib/ios/Fabric.framework/uploadDSYM , before. but I seem not working

Justin-Credible commented 7 years ago

If you had both platforms added before you added this plugin, the build hook should have already added the Crashlytics.frame/run command to the iOS build phase.

See: https://github.com/sarriaroman/FabricPlugin/blob/master/hooks/lib/ios-helper.js#L36

You should be able to see this build phase if you open your project in xcode and navigate to Build Phases:

build phase
nokrasnov commented 7 years ago

@Justin-Credible build hook added successfully, but in fabric i get error about dsyms ("It looks like we are missing dSYMs to process crashes for the versions below."). In the past I did not have errors, maybe fabric change something. @hungdoan2 I just modify my Run Script Build Phase to point to Fabric.framework to ./Fabric.framework/run FABRIC_API_KEY FABRIC_API_SECRET, and it seems that it works

hung-doan commented 7 years ago

@nokrasnov @Justin-Credible Thank you both for interesting information. I will re-test carefully.

fyi, I have just re-checked again. It looks like Fabric.io is not listed in Build Phases.

Fabric Plugin: 1.0.8 Cordova: 6.2.0 Cordova IOS: 4.1.1

hung-doan commented 7 years ago

fyi, I re-tested again. It seem not working (Fabric build script is not listed in Build Phases) at the first try. But It has been working after 5th attempt, without any change(just remove platform, re-add platform, build platform).

hung-doan commented 7 years ago

fyi, I re-tested again. In my previous post. I just remove platform and re-add platform, then the Build Script will be correct.

But now, It not working any more. (I think I was lucky)

Now, I try to remove fabric plugin, then re-add the plugin again. It works!

So my solution at the present:

  1. Try to re-add fabric plugin (sometime It did not work at the first try)
  2. Try to re-add fabric plugin (It always work at 2nd try or more)