Giter Site home page Giter Site logo

gamednastudio / crashlytics Goto Github PK

View Code? Open in Web Editor NEW
32.0 32.0 11.0 34.44 MB

A plugin for Unreal Engine 4 that lets you integrate automatic crash reporting solution into your project.

Home Page: https://www.gamednastudio.com

License: MIT License

C++ 39.71% C# 7.97% Shell 3.66% PLSQL 48.66%

crashlytics's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

crashlytics's Issues

Stuck at dSYM Error and crash

Hi, I'm trying to get this plugin running. I've followed all the steps but now I'm stuck at step 6 when trying to upload the symbols on iOS.

I'm building from Mac and this is the error I'm getting:

DEBUG_INFORMATION_FORMAT should be set to dwarf-with-dsym for all configurations. This could also be a timing issue, make sure the Fabric run script build phase is the last build phase and no other scripts have moved the dSYM from the location Xcode generated it. Unable to process PROJECT_NAME.app.dSYM at path /Users/MY_USERNAME/Documents/Unreal Projects/PROJECT_NAME/PROJECT_NAME/Binaries/IOS/Payload/PROJECT_NAME.app.dSYM

I've tried copying the file PROJECT_NAME.dSYM from [PROJECT_FOLDER]/Binaries/IOS to [PROJECT_FOLDER]/Binaries/IOS/Payload and renaming it to PROJECT_NAME.app.dSYM

This seems to do the trick and the script runs successfully. However whenever I launch the app it crashes after the splash screen in here:

void UCrashlyticsBlueprintLibrary::InitCrashlytics()
{
#if PLATFORM_ANDROID

#elif PLATFORM_IOS
	dispatch_async(dispatch_get_main_queue(), ^{
		[Fabric with : @[[Crashlytics class]]];
	});
#endif
}

And this is the output log:
Terminating app due to uncaught exception 'FABException', reason: '[Fabric] Value of Info.plist[Fabric][APIKey] must contain your Fabric API Key.'

I have followed all the steps so I don't know why or how this could be failing.

Any ideas on how can I fix this issue?

Plugin Build Script Error in UE4.18.3

{ProjectName}\Plugins\Crashlytics\Source\Crashlytics\Crashlytics.Build.cs

// Crashlytics Plugin
// Created by Patryk Stepniewski
// Copyright (c) 2014-2018 gameDNA Ltd. All Rights Reserved.

using System.IO;

namespace UnrealBuildTool.Rules
{
public class Crashlytics : ModuleRules
{
public Crashlytics(ReadOnlyTargetRules Target) : base(Target)
{
PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;

		Definitions.Add("WITH_CRASHLYTICS=1"); // fixed

		PublicIncludePaths.Add("Crashlytics/Public");
		PrivateIncludePaths.Add("Crashlytics/Private");

        PublicDependencyModuleNames.AddRange(new string[] { "Engine", "Core", "CoreUObject" });
		PrivateIncludePathModuleNames.AddRange(new string[] { "Settings" });

		// Additional Frameworks and Libraries for iOS
		if (Target.Platform == UnrealTargetPlatform.IOS)
		{
			PublicAdditionalFrameworks.Add(
					new UEBuildFramework(
						"Fabric",
						"../ThirdParty/iOS/Fabric.embeddedframework.zip"
					)
			);

			PublicAdditionalFrameworks.Add(
					new UEBuildFramework(
						"Crashlytics",
						"../ThirdParty/iOS/Crashlytics.embeddedframework.zip"
					)
			);

			string PluginPath = Utils.MakePathRelativeTo(ModuleDirectory, Target.RelativeEnginePath);
			AdditionalPropertiesForReceipt.Add(new ReceiptProperty("IOSPlugin", Path.Combine(PluginPath, "Crashlytics_UPL_IOS.xml")));// fixed
		}
		// Additional Frameworks and Libraries for Android
		else if (Target.Platform == UnrealTargetPlatform.Android)
		{
			PrivateDependencyModuleNames.AddRange(new string[] { "Launch" });
			string PluginPath = Utils.MakePathRelativeTo(ModuleDirectory, Target.RelativeEnginePath);
			AdditionalPropertiesForReceipt.Add(new ReceiptProperty("AndroidPlugin", Path.Combine(PluginPath, "Crashlytics_UPL_Android.xml"))); // fixed
		}
	}
}

}

Crashlytics won't initialized if built for arm64 only

if ue4 project is built only for arm64[arm64-v8a], the app won't start with failure of crashlytics initialization(missing libcrashlytics.so).

what i guess is, libcrashytics.so is referenced by $Architecture for copying but final destination is always armeabi-v7a(armv7) not suitable for arm64 architecture.

... Crashlytics_UPL_Android.xml ...

  <resourceCopies>
	  <copyFile src="$S(PluginDir)/../../Source/ThirdParty/AndroidLibs/$S(Architecture)/libcrashlytics.so"
				  dst="$S(BuildDir)/libs/armeabi-v7a/libcrashlytics.so" />
	  <copyFile src="$S(PluginDir)/../../Source/ThirdParty/AndroidLibs/$S(Architecture)/libcrashlytics-envelope.so"
					dst="$S(BuildDir)/libs/armeabi-v7a/libcrashlytics-envelope.so" />
	  <copyFile src="$S(PluginDir)/../../Source/ThirdParty/AndroidLibs/$S(Architecture)/libunwind-crashlytics.so"
				  dst="$S(BuildDir)/libs/armeabi-v7a/libunwind-crashlytics.so" />
  </resourceCopies>

[btw, thank you for all your supporting ๐Ÿ‘. i missed saying it so far. X-D)

crashlytics_build.xml not found, if plugin is disabled in uproject setting

when Crashlytics plugin is disabled and doing Android Cooking,
screen shot 2017-03-18 at 5 37 38 pm

facing this error message.

UATHelper: Packaging (Android (ASTC)): UnrealBuildTool: BUILD FAILED
UATHelper: Packaging (Android (ASTC)): UnrealBuildTool: D:{projectname}\Intermediate\Android\APK\build.xml:69: The following error occurred while executing this line:
UATHelper: Packaging (Android (ASTC)): UnrealBuildTool: D:{projectname}\Intermediate\Android\APK\custom_rules.xml:3: Cannot find D:{projectname}\Intermediate\Android\APK\crashlytics_build.xml imported from D:{projectname}\Intermediate\Android\APK\custom_rules.xml
UATHelper: Packaging (Android (ASTC)): UnrealBuildTool:
UATHelper: Packaging (Android (ASTC)): UnrealBuildTool: Total time: 0 seconds


what i've thought is,
custom_ruiles.xml defines [import "crashlytics_build.xml"] and it can't be referenced once plugin is disabled.

would you check it please?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.