Skip to content

Commit

Permalink
Add Crashalytics
Browse files Browse the repository at this point in the history
Signed-off-by: Joseph Mattiello <[email protected]>
  • Loading branch information
JoeMatt committed Jan 20, 2025
1 parent c8c7a04 commit be22fee
Show file tree
Hide file tree
Showing 5 changed files with 251 additions and 21 deletions.
73 changes: 73 additions & 0 deletions Provenance.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,13 @@
B30059852C7974F5003010F5 /* PVSupport in Frameworks */ = {isa = PBXBuildFile; productRef = B30059842C7974F5003010F5 /* PVSupport */; };
B30585692C0C14EE00B91D7A /* PVWebServer in Frameworks */ = {isa = PBXBuildFile; productRef = B30585682C0C14EE00B91D7A /* PVWebServer */; };
B305856E2C0D52F200B91D7A /* PVLibrary in Frameworks */ = {isa = PBXBuildFile; productRef = B305856D2C0D52F200B91D7A /* PVLibrary */; };
B306D7D92D3DDB6D00C71EBE /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = B306D7D82D3DDB6D00C71EBE /* GoogleService-Info.plist */; };
B306D7DD2D3DDB6D00C71EBE /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = B306D7D82D3DDB6D00C71EBE /* GoogleService-Info.plist */; };
B306D7E12D3DDB6D00C71EBE /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = B306D7D82D3DDB6D00C71EBE /* GoogleService-Info.plist */; };
B306D7E42D3DDC6B00C71EBE /* FirebaseAnalyticsWithoutAdIdSupport in Frameworks */ = {isa = PBXBuildFile; productRef = B306D7E32D3DDC6B00C71EBE /* FirebaseAnalyticsWithoutAdIdSupport */; };
B306D7E62D3DDC6B00C71EBE /* FirebaseCore in Frameworks */ = {isa = PBXBuildFile; productRef = B306D7E52D3DDC6B00C71EBE /* FirebaseCore */; };
B306D7E82D3DDC6B00C71EBE /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = B306D7E72D3DDC6B00C71EBE /* FirebaseCrashlytics */; };
B306D7EA2D3DDC6B00C71EBE /* FirebasePerformance in Frameworks */ = {isa = PBXBuildFile; productRef = B306D7E92D3DDC6B00C71EBE /* FirebasePerformance */; };
B30ED0D72CFD3C4200AFCFCE /* PVCoreMednafen-Dynamic in Frameworks */ = {isa = PBXBuildFile; productRef = B30ED0D62CFD3C4200AFCFCE /* PVCoreMednafen-Dynamic */; };
B30ED0D82CFD3C4200AFCFCE /* PVCoreMednafen-Dynamic in Embed Frameworks */ = {isa = PBXBuildFile; productRef = B30ED0D62CFD3C4200AFCFCE /* PVCoreMednafen-Dynamic */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
B30ED0DA2CFD3C5200AFCFCE /* PVCoreMednafen-Dynamic in Frameworks */ = {isa = PBXBuildFile; productRef = B30ED0D92CFD3C5200AFCFCE /* PVCoreMednafen-Dynamic */; };
Expand Down Expand Up @@ -1772,6 +1779,7 @@
B305F103276B6BBD003AE510 /* PVCrabEmu.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PVCrabEmu.framework; sourceTree = BUILT_PRODUCTS_DIR; };
B30623162CC81A1000B4F954 /* Provenance-UnderDevelopment-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Provenance-UnderDevelopment-Info.plist"; sourceTree = "<group>"; };
B3062B1D2971A60D00686D31 /* libMoltenVK.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libMoltenVK.dylib; path = CoresRetro/RetroArch/RetroArch/pkg/apple/Frameworks/MoltenVK/dylib/iOS/libMoltenVK.dylib; sourceTree = "<group>"; };
B306D7D82D3DDB6D00C71EBE /* GoogleService-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
B306E1412769FE65001DC52E /* PVO2EM.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PVO2EM.framework; sourceTree = BUILT_PRODUCTS_DIR; };
B309C7A42717C49F00279529 /* PVFlycast.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PVFlycast.framework; sourceTree = BUILT_PRODUCTS_DIR; };
B309C7A72717C4B500279529 /* PVFlycast.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PVFlycast.framework; sourceTree = BUILT_PRODUCTS_DIR; };
Expand Down Expand Up @@ -2904,6 +2912,7 @@
files = (
B3F9049E2C1FE9D8002283B3 /* libbz2.tbd in Frameworks */,
B30ED0D72CFD3C4200AFCFCE /* PVCoreMednafen-Dynamic in Frameworks */,
B306D7EA2D3DDC6B00C71EBE /* FirebasePerformance in Frameworks */,
B38FB4A82CBEF6B0006786C6 /* libavcodec.xcframework in Frameworks */,
B33B4F4B2C1A5B4B007371C5 /* RealmSwift in Frameworks */,
B3E2AA382CB635BB00E2636D /* PVGME.framework in Frameworks */,
Expand Down Expand Up @@ -2933,6 +2942,7 @@
B38A68C02CCF031C001C57D0 /* PVVisualBoyAdvance-Dynamic in Frameworks */,
B3E0CFA52C054FC200F45074 /* PVEmulatorCore in Frameworks */,
B394CD772BDEE53A006B63E8 /* Photos.framework in Frameworks */,
B306D7E82D3DDC6B00C71EBE /* FirebaseCrashlytics in Frameworks */,
B3E0CFA22C054F9F00F45074 /* ZipArchive in Frameworks */,
B394CD782BDEE53A006B63E8 /* GameController.framework in Frameworks */,
B33BD1C82C6A6261001E933A /* PVStella-Dynamic in Frameworks */,
Expand All @@ -2948,6 +2958,7 @@
B33A09342D2D0B0C00BFB6C9 /* PVJIT in Frameworks */,
B32D45C72CB7310C006B76C2 /* PVGambatte in Frameworks */,
B3E2AA302CB6346900E2636D /* PVOpera.framework in Frameworks */,
B306D7E62D3DDC6B00C71EBE /* FirebaseCore in Frameworks */,
B394CD7C2BDEE53A006B63E8 /* CoreServices.framework in Frameworks */,
B394CD872BDEE53A006B63E8 /* AVFoundation.framework in Frameworks */,
B394CD892BDEE53A006B63E8 /* CFNetwork.framework in Frameworks */,
Expand All @@ -2969,6 +2980,7 @@
B394CDA12BDEE53A006B63E8 /* Reachability in Frameworks */,
B318E27A2CAB4C2400D0E599 /* PVO2EM.framework in Frameworks */,
B38FB4AA2CBEF6B0006786C6 /* libavformat.xcframework in Frameworks */,
B306D7E42D3DDC6B00C71EBE /* FirebaseAnalyticsWithoutAdIdSupport in Frameworks */,
B318E2882CAB512F00D0E599 /* PVMupen64PlusRspHLE.framework in Frameworks */,
B394CDA72BDEE53A006B63E8 /* SteamController in Frameworks */,
B3E2AA512CB63A6200E2636D /* PVBeetlePSX.framework in Frameworks */,
Expand Down Expand Up @@ -3650,6 +3662,7 @@
1A4869BB17C8CA2C0019F6D2 /* Resources */ = {
isa = PBXGroup;
children = (
B306D7D82D3DDB6D00C71EBE /* GoogleService-Info.plist */,
B394CDE32BDF22A2006B63E8 /* Provenance-AppStore.entitlements */,
B379D0472B4FB9A80067325A /* Provenance-JB.entitlements */,
B361938F221FB93B00F73875 /* Provenance-Free.entitlements */,
Expand Down Expand Up @@ -4489,6 +4502,7 @@
B394CDB62BDEE53A006B63E8 /* Resources */,
B394CDDA2BDEE53A006B63E8 /* Script: Set Build Number */,
93DB4BBC9C6D487AAA130B02 /* Upload Debug Symbols to Sentry */,
B306D7EB2D3DDD3300C71EBE /* Crashlytics */,
);
buildRules = (
);
Expand Down Expand Up @@ -4541,6 +4555,10 @@
B33A09332D2D0B0C00BFB6C9 /* PVJIT */,
B35F93E02D2F71450016E633 /* WhatsNewKit */,
54925F9AB59542258A6A5CE9 /* Sentry */,
B306D7E32D3DDC6B00C71EBE /* FirebaseAnalyticsWithoutAdIdSupport */,
B306D7E52D3DDC6B00C71EBE /* FirebaseCore */,
B306D7E72D3DDC6B00C71EBE /* FirebaseCrashlytics */,
B306D7E92D3DDC6B00C71EBE /* FirebasePerformance */,
);
productName = Provenance;
productReference = B394CDDF2BDEE53A006B63E8 /* Provenance.app */;
Expand Down Expand Up @@ -4950,6 +4968,7 @@
B3E77F822D1F57E6004A3AD2 /* XCLocalSwiftPackageReference "PVFeatureFlags" */,
B35F93DF2D2F71450016E633 /* XCRemoteSwiftPackageReference "WhatsNewKit" */,
F8F20E7C3CB546288E1FB7F2 /* XCRemoteSwiftPackageReference "sentry-cocoa" */,
B306D7E22D3DDC6B00C71EBE /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */,
);
productRefGroup = 1A3D409517B2DCE4004DFFFC /* Products */;
projectDirPath = "";
Expand Down Expand Up @@ -5105,6 +5124,7 @@
files = (
B341FDDE2BE61EC100718929 /* InfoPlist.strings in Resources */,
B341FDDF2BE61EC100718929 /* Strings.strings in Resources */,
B306D7D92D3DDB6D00C71EBE /* GoogleService-Info.plist in Resources */,
B3DF8EDB2CC7AE1F0006F20E /* ColoredIcons.xcassets in Resources */,
B341FDE42BE61EC100718929 /* Assets.xcassets in Resources */,
B341FDE62BE61EC100718929 /* Settings.bundle in Resources */,
Expand Down Expand Up @@ -5167,6 +5187,7 @@
files = (
B35EEFE32C6C6D1A00EBD1A8 /* InfoPlist.strings in Resources */,
B35EEFE42C6C6D1A00EBD1A8 /* Strings.strings in Resources */,
B306D7DD2D3DDB6D00C71EBE /* GoogleService-Info.plist in Resources */,
B3E17E232CCF91B000732AEA /* AppStoreAssets-Lite.xcassets in Resources */,
B3DF8EE02CC7AE1F0006F20E /* ColoredIcons.xcassets in Resources */,
B35EEFE92C6C6D1A00EBD1A8 /* Settings.bundle in Resources */,
Expand All @@ -5188,6 +5209,7 @@
files = (
B394CDB82BDEE53A006B63E8 /* InfoPlist.strings in Resources */,
B394CDB92BDEE53A006B63E8 /* Strings.strings in Resources */,
B306D7E12D3DDB6D00C71EBE /* GoogleService-Info.plist in Resources */,
B3DF8EDE2CC7AE1F0006F20E /* ColoredIcons.xcassets in Resources */,
B394CDBF2BDEE53A006B63E8 /* Assets.xcassets in Resources */,
B394CDC12BDEE53A006B63E8 /* Settings.bundle in Resources */,
Expand Down Expand Up @@ -5465,6 +5487,29 @@
shellPath = /bin/sh;
shellScript = ./Provenance/Resources/createVersionHeader.sh;
};
B306D7EB2D3DDD3300C71EBE /* Crashlytics */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}",
"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}",
"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist",
"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist",
"$(TARGET_BUILD_DIR)/$(EXECUTABLE_PATH)",
);
name = Crashlytics;
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${BUILD_DIR%/Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run\"\n";
};
B30E94842793B8BE00871E57 /* Test for CodeSigning.xcconfig */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
Expand Down Expand Up @@ -10981,6 +11026,14 @@
kind = branch;
};
};
B306D7E22D3DDC6B00C71EBE /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/firebase/firebase-ios-sdk";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 11.7.0;
};
};
B33B4F3E2C198F32007371C5 /* XCRemoteSwiftPackageReference "MBProgressHUD" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/jdg/MBProgressHUD.git";
Expand Down Expand Up @@ -11334,6 +11387,26 @@
package = B323B0072BF46D2800CEA3CF /* XCLocalSwiftPackageReference "PVLibrary" */;
productName = PVLibrary;
};
B306D7E32D3DDC6B00C71EBE /* FirebaseAnalyticsWithoutAdIdSupport */ = {
isa = XCSwiftPackageProductDependency;
package = B306D7E22D3DDC6B00C71EBE /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
productName = FirebaseAnalyticsWithoutAdIdSupport;
};
B306D7E52D3DDC6B00C71EBE /* FirebaseCore */ = {
isa = XCSwiftPackageProductDependency;
package = B306D7E22D3DDC6B00C71EBE /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
productName = FirebaseCore;
};
B306D7E72D3DDC6B00C71EBE /* FirebaseCrashlytics */ = {
isa = XCSwiftPackageProductDependency;
package = B306D7E22D3DDC6B00C71EBE /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
productName = FirebaseCrashlytics;
};
B306D7E92D3DDC6B00C71EBE /* FirebasePerformance */ = {
isa = XCSwiftPackageProductDependency;
package = B306D7E22D3DDC6B00C71EBE /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
productName = FirebasePerformance;
};
B30ED0D62CFD3C4200AFCFCE /* PVCoreMednafen-Dynamic */ = {
isa = XCSwiftPackageProductDependency;
package = B3B9BE542C802023005C405B /* XCLocalSwiftPackageReference "Cores/Mednafen" */;
Expand Down
117 changes: 117 additions & 0 deletions Provenance.xcworkspace/xcshareddata/swiftpm/Package.resolved
Original file line number Diff line number Diff line change
@@ -1,6 +1,15 @@
{
"object": {
"pins": [
{
"package": "abseil",
"repositoryURL": "https://github.com/google/abseil-cpp-binary.git",
"state": {
"branch": null,
"revision": "194a6706acbd25e4ef639bcaddea16e8758a3e27",
"version": "1.2024011602.0"
}
},
{
"package": "ActivityIndicatorView",
"repositoryURL": "https://github.com/exyte/ActivityIndicatorView.git",
Expand All @@ -19,6 +28,15 @@
"version": "1.0.0"
}
},
{
"package": "AppCheck",
"repositoryURL": "https://github.com/google/app-check.git",
"state": {
"branch": null,
"revision": "61b85103a1aeed8218f17c794687781505fbbef5",
"version": "11.2.0"
}
},
{
"package": "AppCenter",
"repositoryURL": "https://github.com/microsoft/appcenter-sdk-apple.git",
Expand Down Expand Up @@ -73,6 +91,15 @@
"version": null
}
},
{
"package": "Firebase",
"repositoryURL": "https://github.com/firebase/firebase-ios-sdk",
"state": {
"branch": null,
"revision": "0d885d28250fb1196b614bc9455079b75c531f72",
"version": "11.7.0"
}
},
{
"package": "FloatingButton",
"repositoryURL": "https://github.com/exyte/FloatingButton.git",
Expand All @@ -91,6 +118,51 @@
"version": "1.16.0"
}
},
{
"package": "GoogleAppMeasurement",
"repositoryURL": "https://github.com/google/GoogleAppMeasurement.git",
"state": {
"branch": null,
"revision": "be0881ff728eca210ccb628092af400c086abda3",
"version": "11.7.0"
}
},
{
"package": "GoogleDataTransport",
"repositoryURL": "https://github.com/google/GoogleDataTransport.git",
"state": {
"branch": null,
"revision": "617af071af9aa1d6a091d59a202910ac482128f9",
"version": "10.1.0"
}
},
{
"package": "GoogleUtilities",
"repositoryURL": "https://github.com/google/GoogleUtilities.git",
"state": {
"branch": null,
"revision": "53156c7ec267db846e6b64c9f4c4e31ba4cf75eb",
"version": "8.0.2"
}
},
{
"package": "gRPC",
"repositoryURL": "https://github.com/google/grpc-binary.git",
"state": {
"branch": null,
"revision": "f56d8fc3162de9a498377c7b6cea43431f4f5083",
"version": "1.65.1"
}
},
{
"package": "GTMSessionFetcher",
"repositoryURL": "https://github.com/google/gtm-session-fetcher.git",
"state": {
"branch": null,
"revision": "85b7b231882c3c472b8bda4fb495324d3f19bab6",
"version": "4.2.0"
}
},
{
"package": "HexColors",
"repositoryURL": "https://github.com/JoeMatt/HexColors.git",
Expand All @@ -100,6 +172,24 @@
"version": null
}
},
{
"package": "InteropForGoogle",
"repositoryURL": "https://github.com/google/interop-ios-for-google-sdks.git",
"state": {
"branch": null,
"revision": "2d12673670417654f08f5f90fdd62926dc3a2648",
"version": "100.0.0"
}
},
{
"package": "leveldb",
"repositoryURL": "https://github.com/firebase/leveldb.git",
"state": {
"branch": null,
"revision": "a0bc79961d7be727d258d33d5a6b2f1023270ba1",
"version": "1.22.5"
}
},
{
"package": "Lighter",
"repositoryURL": "https://github.com/JoeMatt/Lighter.git",
Expand All @@ -118,6 +208,15 @@
"version": "1.2.0"
}
},
{
"package": "nanopb",
"repositoryURL": "https://github.com/firebase/nanopb.git",
"state": {
"branch": null,
"revision": "b7e1104502eca3a213b46303391ca4d3bc8ddec1",
"version": "2.30910.0"
}
},
{
"package": "OpenDateInterval",
"repositoryURL": "https://github.com/MrAsterisco/OpenDateInterval",
Expand Down Expand Up @@ -154,6 +253,15 @@
"version": null
}
},
{
"package": "Promises",
"repositoryURL": "https://github.com/google/promises.git",
"state": {
"branch": null,
"revision": "540318ecedd63d883069ae7f1ed811a2df00b6ac",
"version": "2.4.0"
}
},
{
"package": "Reachability",
"repositoryURL": "https://github.com/ashleymills/Reachability.swift",
Expand Down Expand Up @@ -316,6 +424,15 @@
"version": null
}
},
{
"package": "SwiftProtobuf",
"repositoryURL": "https://github.com/apple/swift-protobuf.git",
"state": {
"branch": null,
"revision": "ebc7251dd5b37f627c93698e4374084d98409633",
"version": "1.28.2"
}
},
{
"package": "swift-syntax",
"repositoryURL": "https://github.com/swiftlang/swift-syntax.git",
Expand Down
10 changes: 10 additions & 0 deletions Provenance/Main UI/PVAppDelegate.swift
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,12 @@ import SwiftUI
import Defaults
import PVFeatureFlags

#if canImport(FirebaseCore)
import FirebaseCore
import FirebaseCrashlyticsSwift
import FirebaseAnalytics
#endif

// Conditionally import PVJIT and JITManager if available
#if canImport(PVJIT)
import PVJIT
Expand Down Expand Up @@ -277,6 +283,10 @@ final class PVAppDelegate: UIResponder, GameLaunchingAppDelegate, UIApplicationD
}

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil) -> Bool {
#if canImport(FirebaseCore)
FirebaseApp.configure()
#endif

ILOG("PVAppDelegate: Application did finish launching")

initializeAppComponents()
Expand Down
Loading

0 comments on commit be22fee

Please sign in to comment.