Merge pull request #1668 from microsoft/feature/net6
Add .NET 6 support for iOS/macOS
This commit is contained in:
Коммит
658230fb63
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"version": 1,
|
||||
"isRoot": true,
|
||||
"tools": {
|
||||
"cake.tool": {
|
||||
"version": "2.2.0",
|
||||
"commands": [
|
||||
"dotnet-cake"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
|
@ -19,8 +19,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Android
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.iOS", "SDK\AppCenter\Microsoft.AppCenter.iOS\Microsoft.AppCenter.iOS.csproj", "{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.iOS.Bindings", "SDK\AppCenter\Microsoft.AppCenter.iOS.Bindings\Microsoft.AppCenter.iOS.Bindings.csproj", "{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.AppCenter.Shared", "SDK\AppCenter\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.shproj", "{C6C4937C-D5F4-4E00-8B51-8D826AD83C5E}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Analytics", "SDK\AppCenterAnalytics\Microsoft.AppCenter.Analytics\Microsoft.AppCenter.Analytics.csproj", "{0F13E444-717E-460A-BDE7-8AD537F0A418}"
|
||||
|
@ -31,8 +29,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Analyti
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Analytics.iOS", "SDK\AppCenterAnalytics\Microsoft.AppCenter.Analytics.iOS\Microsoft.AppCenter.Analytics.iOS.csproj", "{EF5D0090-9E12-45B5-961C-45D787BD80A5}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Analytics.iOS.Bindings", "SDK\AppCenterAnalytics\Microsoft.AppCenter.Analytics.iOS.Bindings\Microsoft.AppCenter.Analytics.iOS.Bindings.csproj", "{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes\Microsoft.AppCenter.Crashes.csproj", "{302F0881-77AE-4CCE-ACF4-930AD5D4FB08}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.AppCenter.Crashes.Shared", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.shproj", "{DB5A0B7D-8090-4A0C-97C7-CDF17AACAAF2}"
|
||||
|
@ -41,8 +37,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes.Android", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Android\Microsoft.AppCenter.Crashes.Android.csproj", "{D6DB87CA-B8EC-4A38-805F-AFDC7FEC38EB}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes.iOS.Bindings", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.iOS.Bindings\Microsoft.AppCenter.Crashes.iOS.Bindings.csproj", "{FCEB9729-627A-4964-B853-1649CA1FA76D}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes.iOS", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.iOS\Microsoft.AppCenter.Crashes.iOS.csproj", "{4936A94C-BE22-4F73-8468-64FA4371FF80}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Apps", "Apps", "{274AB35C-68B4-4EFA-803B-8A7CFEC25EFC}"
|
||||
|
@ -63,8 +57,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AppCenterDistribute", "AppC
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Distribute.Android.Bindings", "SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.Android.Bindings\Microsoft.AppCenter.Distribute.Android.Bindings.csproj", "{11D31A79-0F09-4708-8097-3D1C5D886547}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Distribute.iOS.Bindings", "SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.iOS.Bindings\Microsoft.AppCenter.Distribute.iOS.Bindings.csproj", "{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Distribute.Android", "SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.Android\Microsoft.AppCenter.Distribute.Android.csproj", "{AD38DEE9-8A74-4B04-93C3-0831B55E7254}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Distribute.iOS", "SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.iOS\Microsoft.AppCenter.Distribute.iOS.csproj", "{60241627-33BB-45F9-A1B6-6F1CB2BF2C4A}"
|
||||
|
@ -73,7 +65,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Distrib
|
|||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.AppCenter.Distribute.Shared", "SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.Shared\Microsoft.AppCenter.Distribute.Shared.shproj", "{5AEF073D-7370-41C1-86CD-A61B4DEB9883}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.AppCenter.Crashes.Shared.Targets", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared.Targets\Microsoft.AppCenter.Crashes.Shared.Targets.shproj", "{CAE55C79-1601-400D-86BF-03AB8CC5B8B9}"
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.AppCenter.Crashes.Shared.Xamarin", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared.Xamarin\Microsoft.AppCenter.Crashes.Shared.Xamarin.shproj", "{CAE55C79-1601-400D-86BF-03AB8CC5B8B9}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.AppCenter.Shared.Xamarin", "SDK\AppCenter\Microsoft.AppCenter.Shared.Xamarin\Microsoft.AppCenter.Shared.Xamarin.shproj", "{7076E711-FE72-4EC0-8335-045EEFC1100C}"
|
||||
EndProject
|
||||
|
@ -81,20 +73,24 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Contoso.UtilClassLibrary",
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.MacOS", "SDK\AppCenter\Microsoft.AppCenter.MacOS\Microsoft.AppCenter.MacOS.csproj", "{727A9E5A-566A-4DC5-B62B-8F7CA17661B8}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.MacOS.Bindings", "SDK\AppCenter\Microsoft.AppCenter.MacOS.Bindings\Microsoft.AppCenter.MacOS.Bindings.csproj", "{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Analytics.MacOS", "SDK\AppCenterAnalytics\Microsoft.AppCenter.Analytics.MacOS\Microsoft.AppCenter.Analytics.MacOS.csproj", "{EE438174-EE11-432E-9225-5B4EA80A7917}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Analytics.MacOS.Bindings", "SDK\AppCenterAnalytics\Microsoft.AppCenter.Analytics.MacOS.Bindings\Microsoft.AppCenter.Analytics.MacOS.Bindings.csproj", "{D00918DD-BAC4-4AD4-A866-056CBE780AB2}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes.MacOS", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.MacOS\Microsoft.AppCenter.Crashes.MacOS.csproj", "{0635DC94-08B3-458F-B466-3524132601EB}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes.MacOS.Bindings", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.MacOS.Bindings\Microsoft.AppCenter.Crashes.MacOS.Bindings.csproj", "{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Contoso.MacOS.Puppet", "Apps\Contoso.MacOS.Puppet\Contoso.MacOS.Puppet.csproj", "{83AAE9C7-04A6-447E-AE5F-07C8E0A509A8}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Contoso.Forms.Puppet.MacOS", "Apps\Contoso.Forms.Puppet\Contoso.Forms.Puppet.MacOS\Contoso.Forms.Puppet.MacOS.csproj", "{C5B1AC34-F9F1-4C05-AF7A-CB84C16C5481}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.AppCenter.Shared.Apple", "SDK\AppCenter\Microsoft.AppCenter.Shared.Apple\Microsoft.AppCenter.Shared.Apple.shproj", "{C9DC2286-37E4-467A-9DFB-593444265B74}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Analytics.AppleUnified", "SDK\AppCenterAnalytics\Microsoft.AppCenter.Analytics.AppleUnified\Microsoft.AppCenter.Analytics.AppleUnified.csproj", "{A81E0040-093E-4517-9AFD-C788F96D8E4B}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.AppleUnified", "SDK\AppCenter\Microsoft.AppCenter.AppleUnified\Microsoft.AppCenter.AppleUnified.csproj", "{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes.AppleUnified", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.AppleUnified\Microsoft.AppCenter.Crashes.AppleUnified.csproj", "{B062D990-A256-4E0A-88C7-14B1C1216283}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Distribute.AppleUnified", "SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.AppleUnified\Microsoft.AppCenter.Distribute.AppleUnified.csproj", "{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
||||
SDK\AppCenter\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems*{119c1730-e109-4bc9-aa89-9dca2c50bfd5}*SharedItemsImports = 4
|
||||
|
@ -119,7 +115,7 @@ Global
|
|||
SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems*{302f0881-77ae-4cce-acf4-930ad5d4fb08}*SharedItemsImports = 4
|
||||
SDK\AppCenter\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems*{3fe04b97-48de-4895-8612-ecbdfebd917c}*SharedItemsImports = 4
|
||||
SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.Shared\Microsoft.AppCenter.Distribute.Shared.projitems*{41febc72-c12b-47e1-b6f6-51d50158c825}*SharedItemsImports = 4
|
||||
SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared.Targets\Microsoft.AppCenter.Crashes.Shared.Targets.projitems*{4936a94c-be22-4f73-8468-64fa4371ff80}*SharedItemsImports = 4
|
||||
SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared.Xamarin\Microsoft.AppCenter.Crashes.Shared.Xamarin.projitems*{4936a94c-be22-4f73-8468-64fa4371ff80}*SharedItemsImports = 4
|
||||
SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems*{4936a94c-be22-4f73-8468-64fa4371ff80}*SharedItemsImports = 4
|
||||
SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.Shared\Microsoft.AppCenter.Distribute.Shared.projitems*{5aef073d-7370-41c1-86cd-a61b4deb9883}*SharedItemsImports = 13
|
||||
SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.Shared\Microsoft.AppCenter.Distribute.Shared.projitems*{60241627-33bb-45f9-a1b6-6f1cb2bf2c4a}*SharedItemsImports = 4
|
||||
|
@ -131,7 +127,7 @@ Global
|
|||
SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.Shared\Microsoft.AppCenter.Distribute.Shared.projitems*{ad38dee9-8a74-4b04-93c3-0831b55e7254}*SharedItemsImports = 4
|
||||
SDK\AppCenter\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems*{b87370cd-af51-45e0-aa15-3e0abc0c30a0}*SharedItemsImports = 4
|
||||
SDK\AppCenter\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems*{c6c4937c-d5f4-4e00-8b51-8d826ad83c5e}*SharedItemsImports = 13
|
||||
SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared.Targets\Microsoft.AppCenter.Crashes.Shared.Targets.projitems*{d6db87ca-b8ec-4a38-805f-afdc7fec38eb}*SharedItemsImports = 4
|
||||
SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared.Xamarin\Microsoft.AppCenter.Crashes.Shared.Xamarin.projitems*{d6db87ca-b8ec-4a38-805f-afdc7fec38eb}*SharedItemsImports = 4
|
||||
SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems*{d6db87ca-b8ec-4a38-805f-afdc7fec38eb}*SharedItemsImports = 4
|
||||
SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems*{db5a0b7d-8090-4a0c-97c7-cdf17aacaaf2}*SharedItemsImports = 13
|
||||
EndGlobalSection
|
||||
|
@ -376,55 +372,6 @@ Global
|
|||
{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}.Release|x86.Build.0 = Release|Any CPU
|
||||
{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}.GooglePlay|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|x64.Build.0 = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|x86.Build.0 = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.GooglePlay|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0F13E444-717E-460A-BDE7-8AD537F0A418}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0F13E444-717E-460A-BDE7-8AD537F0A418}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0F13E444-717E-460A-BDE7-8AD537F0A418}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
|
@ -636,55 +583,6 @@ Global
|
|||
{EF5D0090-9E12-45B5-961C-45D787BD80A5}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{EF5D0090-9E12-45B5-961C-45D787BD80A5}.Release|x86.Build.0 = Release|Any CPU
|
||||
{EF5D0090-9E12-45B5-961C-45D787BD80A5}.GooglePlay|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|x64.Build.0 = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|x86.Build.0 = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.GooglePlay|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{302F0881-77AE-4CCE-ACF4-930AD5D4FB08}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{302F0881-77AE-4CCE-ACF4-930AD5D4FB08}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{302F0881-77AE-4CCE-ACF4-930AD5D4FB08}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
|
@ -847,55 +745,6 @@ Global
|
|||
{D6DB87CA-B8EC-4A38-805F-AFDC7FEC38EB}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{D6DB87CA-B8EC-4A38-805F-AFDC7FEC38EB}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{D6DB87CA-B8EC-4A38-805F-AFDC7FEC38EB}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|x64.Build.0 = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|x86.Build.0 = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.GooglePlay|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4936A94C-BE22-4F73-8468-64FA4371FF80}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4936A94C-BE22-4F73-8468-64FA4371FF80}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4936A94C-BE22-4F73-8468-64FA4371FF80}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
|
@ -1259,55 +1108,6 @@ Global
|
|||
{11D31A79-0F09-4708-8097-3D1C5D886547}.GooglePlay|Any CPU.Build.0 = Release|Any CPU
|
||||
{11D31A79-0F09-4708-8097-3D1C5D886547}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{11D31A79-0F09-4708-8097-3D1C5D886547}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|x64.Build.0 = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|x86.Build.0 = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.GooglePlay|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{AD38DEE9-8A74-4B04-93C3-0831B55E7254}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{AD38DEE9-8A74-4B04-93C3-0831B55E7254}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{AD38DEE9-8A74-4B04-93C3-0831B55E7254}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
|
@ -1629,60 +1429,6 @@ Global
|
|||
{727A9E5A-566A-4DC5-B62B-8F7CA17661B8}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{727A9E5A-566A-4DC5-B62B-8F7CA17661B8}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{727A9E5A-566A-4DC5-B62B-8F7CA17661B8}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|x64.Build.0 = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.Release|x86.Build.0 = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.GooglePlay|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.GooglePlay|Any CPU.Build.0 = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.GooglePlay|x64.ActiveCfg = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{EE438174-EE11-432E-9225-5B4EA80A7917}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{EE438174-EE11-432E-9225-5B4EA80A7917}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{EE438174-EE11-432E-9225-5B4EA80A7917}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
|
@ -1737,60 +1483,6 @@ Global
|
|||
{EE438174-EE11-432E-9225-5B4EA80A7917}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{EE438174-EE11-432E-9225-5B4EA80A7917}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{EE438174-EE11-432E-9225-5B4EA80A7917}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|x64.Build.0 = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.Release|x86.Build.0 = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.GooglePlay|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.GooglePlay|Any CPU.Build.0 = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.GooglePlay|x64.ActiveCfg = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{0635DC94-08B3-458F-B466-3524132601EB}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0635DC94-08B3-458F-B466-3524132601EB}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0635DC94-08B3-458F-B466-3524132601EB}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
|
@ -1845,60 +1537,6 @@ Global
|
|||
{0635DC94-08B3-458F-B466-3524132601EB}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{0635DC94-08B3-458F-B466-3524132601EB}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{0635DC94-08B3-458F-B466-3524132601EB}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|x64.Build.0 = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.Release|x86.Build.0 = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.GooglePlay|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.GooglePlay|Any CPU.Build.0 = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.GooglePlay|x64.ActiveCfg = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{83AAE9C7-04A6-447E-AE5F-07C8E0A509A8}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{83AAE9C7-04A6-447E-AE5F-07C8E0A509A8}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{83AAE9C7-04A6-447E-AE5F-07C8E0A509A8}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
|
@ -2007,6 +1645,222 @@ Global
|
|||
{C5B1AC34-F9F1-4C05-AF7A-CB84C16C5481}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{C5B1AC34-F9F1-4C05-AF7A-CB84C16C5481}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{C5B1AC34-F9F1-4C05-AF7A-CB84C16C5481}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|x64.Build.0 = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.Release|x86.Build.0 = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.GooglePlay|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.GooglePlay|Any CPU.Build.0 = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.GooglePlay|x64.ActiveCfg = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|x64.Build.0 = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.Release|x86.Build.0 = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.GooglePlay|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.GooglePlay|Any CPU.Build.0 = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.GooglePlay|x64.ActiveCfg = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|x64.Build.0 = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.Release|x86.Build.0 = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.GooglePlay|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.GooglePlay|Any CPU.Build.0 = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.GooglePlay|x64.ActiveCfg = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|x64.Build.0 = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.Release|x86.Build.0 = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.GooglePlay|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.GooglePlay|Any CPU.Build.0 = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.GooglePlay|x64.ActiveCfg = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.GooglePlay|x64.Build.0 = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.GooglePlay|x86.ActiveCfg = Release|Any CPU
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE}.GooglePlay|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -2019,18 +1873,15 @@ Global
|
|||
{119C1730-E109-4BC9-AA89-9DCA2C50BFD5} = {13744327-9529-490B-A970-06A1D3144117}
|
||||
{C3B5BA33-DA39-400D-B5B3-85C68354FD74} = {13744327-9529-490B-A970-06A1D3144117}
|
||||
{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0} = {13744327-9529-490B-A970-06A1D3144117}
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351} = {13744327-9529-490B-A970-06A1D3144117}
|
||||
{C6C4937C-D5F4-4E00-8B51-8D826AD83C5E} = {13744327-9529-490B-A970-06A1D3144117}
|
||||
{0F13E444-717E-460A-BDE7-8AD537F0A418} = {C4C63221-60D5-412B-92CC-D59A8EA62E23}
|
||||
{93E4ADA5-8D7A-44BF-9549-0AD76AB86E8F} = {C4C63221-60D5-412B-92CC-D59A8EA62E23}
|
||||
{34771DC0-9684-45BE-9C9C-5A686468722C} = {C4C63221-60D5-412B-92CC-D59A8EA62E23}
|
||||
{EF5D0090-9E12-45B5-961C-45D787BD80A5} = {C4C63221-60D5-412B-92CC-D59A8EA62E23}
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7} = {C4C63221-60D5-412B-92CC-D59A8EA62E23}
|
||||
{302F0881-77AE-4CCE-ACF4-930AD5D4FB08} = {7FAAA086-4453-4B62-AD9A-2E2ED216E3C4}
|
||||
{DB5A0B7D-8090-4A0C-97C7-CDF17AACAAF2} = {7FAAA086-4453-4B62-AD9A-2E2ED216E3C4}
|
||||
{42D541D7-B7C9-45A7-8D4D-8FB5A00668B3} = {7FAAA086-4453-4B62-AD9A-2E2ED216E3C4}
|
||||
{D6DB87CA-B8EC-4A38-805F-AFDC7FEC38EB} = {7FAAA086-4453-4B62-AD9A-2E2ED216E3C4}
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D} = {7FAAA086-4453-4B62-AD9A-2E2ED216E3C4}
|
||||
{4936A94C-BE22-4F73-8468-64FA4371FF80} = {7FAAA086-4453-4B62-AD9A-2E2ED216E3C4}
|
||||
{088DA4BA-0AFB-4690-A639-7559BE14D0C8} = {274AB35C-68B4-4EFA-803B-8A7CFEC25EFC}
|
||||
{92313C69-3BC4-4276-A1C8-100C86183F12} = {088DA4BA-0AFB-4690-A639-7559BE14D0C8}
|
||||
|
@ -2040,7 +1891,6 @@ Global
|
|||
{7595F47D-11D6-4716-BDE6-264C1AFBFFB5} = {274AB35C-68B4-4EFA-803B-8A7CFEC25EFC}
|
||||
{B0562DBB-3784-4F1C-A355-61CFD44ED963} = {8CDD4942-2E48-4CF7-AC99-85718F238455}
|
||||
{11D31A79-0F09-4708-8097-3D1C5D886547} = {B0562DBB-3784-4F1C-A355-61CFD44ED963}
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462} = {B0562DBB-3784-4F1C-A355-61CFD44ED963}
|
||||
{AD38DEE9-8A74-4B04-93C3-0831B55E7254} = {B0562DBB-3784-4F1C-A355-61CFD44ED963}
|
||||
{60241627-33BB-45F9-A1B6-6F1CB2BF2C4A} = {B0562DBB-3784-4F1C-A355-61CFD44ED963}
|
||||
{41FEBC72-C12B-47E1-B6F6-51D50158C825} = {B0562DBB-3784-4F1C-A355-61CFD44ED963}
|
||||
|
@ -2049,13 +1899,15 @@ Global
|
|||
{7076E711-FE72-4EC0-8335-045EEFC1100C} = {13744327-9529-490B-A970-06A1D3144117}
|
||||
{D0FC73E2-AE97-495B-B41B-61CD422A8AE9} = {274AB35C-68B4-4EFA-803B-8A7CFEC25EFC}
|
||||
{727A9E5A-566A-4DC5-B62B-8F7CA17661B8} = {13744327-9529-490B-A970-06A1D3144117}
|
||||
{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4} = {13744327-9529-490B-A970-06A1D3144117}
|
||||
{EE438174-EE11-432E-9225-5B4EA80A7917} = {C4C63221-60D5-412B-92CC-D59A8EA62E23}
|
||||
{D00918DD-BAC4-4AD4-A866-056CBE780AB2} = {C4C63221-60D5-412B-92CC-D59A8EA62E23}
|
||||
{0635DC94-08B3-458F-B466-3524132601EB} = {7FAAA086-4453-4B62-AD9A-2E2ED216E3C4}
|
||||
{85C929EF-7FF4-4C43-967E-DFA816EFF5E4} = {7FAAA086-4453-4B62-AD9A-2E2ED216E3C4}
|
||||
{83AAE9C7-04A6-447E-AE5F-07C8E0A509A8} = {274AB35C-68B4-4EFA-803B-8A7CFEC25EFC}
|
||||
{C5B1AC34-F9F1-4C05-AF7A-CB84C16C5481} = {088DA4BA-0AFB-4690-A639-7559BE14D0C8}
|
||||
{C9DC2286-37E4-467A-9DFB-593444265B74} = {13744327-9529-490B-A970-06A1D3144117}
|
||||
{A81E0040-093E-4517-9AFD-C788F96D8E4B} = {C4C63221-60D5-412B-92CC-D59A8EA62E23}
|
||||
{2B8DAB16-91E2-4EFB-ADFB-CA87F7B97A85} = {13744327-9529-490B-A970-06A1D3144117}
|
||||
{B062D990-A256-4E0A-88C7-14B1C1216283} = {7FAAA086-4453-4B62-AD9A-2E2ED216E3C4}
|
||||
{416D42EC-CD5D-42FF-BC16-E2E66C38FDAE} = {B0562DBB-3784-4F1C-A355-61CFD44ED963}
|
||||
EndGlobalSection
|
||||
GlobalSection(MonoDevelopProperties) = preSolution
|
||||
Policies = $0
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"solution": {
|
||||
"path": "AppCenter-Mac.sln",
|
||||
"projects": [
|
||||
"SDK\\AppCenter\\Microsoft.AppCenter.AppleUnified\\Microsoft.AppCenter.AppleUnified.csproj",
|
||||
"SDK\\AppCenterAnalytics\\Microsoft.AppCenter.Analytics.AppleUnified\\Microsoft.AppCenter.Analytics.AppleUnified.csproj",
|
||||
"SDK\\AppCenterCrashes\\Microsoft.AppCenter.Crashes.AppleUnified\\Microsoft.AppCenter.Crashes.AppleUnified.csproj",
|
||||
"SDK\\AppCenterDistribute\\Microsoft.AppCenter.Distribute.AppleUnified\\Microsoft.AppCenter.Distribute.AppleUnified.csproj"
|
||||
]
|
||||
}
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
"solution": {
|
||||
"path": "AppCenter-Mac.sln",
|
||||
"projects": [
|
||||
"SDK\\AppCenter\\Microsoft.AppCenter\\Microsoft.AppCenter.csproj",
|
||||
"SDK\\AppCenter\\Microsoft.AppCenter.Android\\Microsoft.AppCenter.Android.csproj",
|
||||
"SDK\\AppCenter\\Microsoft.AppCenter.Android.Bindings\\Microsoft.AppCenter.Android.Bindings.csproj",
|
||||
"SDK\\AppCenter\\Microsoft.AppCenter.iOS\\Microsoft.AppCenter.iOS.csproj",
|
||||
"SDK\\AppCenter\\Microsoft.AppCenter.MacOS\\Microsoft.AppCenter.MacOS.csproj",
|
||||
"SDK\\AppCenterAnalytics\\Microsoft.AppCenter.Analytics\\Microsoft.AppCenter.Analytics.csproj",
|
||||
"SDK\\AppCenterAnalytics\\Microsoft.AppCenter.Analytics.Android\\Microsoft.AppCenter.Analytics.Android.csproj",
|
||||
"SDK\\AppCenterAnalytics\\Microsoft.AppCenter.Analytics.Android.Bindings\\Microsoft.AppCenter.Analytics.Android.Bindings.csproj",
|
||||
"SDK\\AppCenterAnalytics\\Microsoft.AppCenter.Analytics.iOS\\Microsoft.AppCenter.Analytics.iOS.csproj",
|
||||
"SDK\\AppCenterAnalytics\\Microsoft.AppCenter.Analytics.MacOS\\Microsoft.AppCenter.Analytics.MacOS.csproj",
|
||||
"SDK\\AppCenterCrashes\\Microsoft.AppCenter.Crashes\\Microsoft.AppCenter.Crashes.csproj",
|
||||
"SDK\\AppCenterCrashes\\Microsoft.AppCenter.Crashes.Android\\Microsoft.AppCenter.Crashes.Android.csproj",
|
||||
"SDK\\AppCenterCrashes\\Microsoft.AppCenter.Crashes.Android.Bindings\\Microsoft.AppCenter.Crashes.Android.Bindings.csproj",
|
||||
"SDK\\AppCenterCrashes\\Microsoft.AppCenter.Crashes.iOS\\Microsoft.AppCenter.Crashes.iOS.csproj",
|
||||
"SDK\\AppCenterCrashes\\Microsoft.AppCenter.Crashes.MacOS\\Microsoft.AppCenter.Crashes.MacOS.csproj",
|
||||
"SDK\\AppCenterDistribute\\Microsoft.AppCenter.Distribute\\Microsoft.AppCenter.Distribute.csproj",
|
||||
"SDK\\AppCenterDistribute\\Microsoft.AppCenter.Distribute.Android\\Microsoft.AppCenter.Distribute.Android.csproj",
|
||||
"SDK\\AppCenterDistribute\\Microsoft.AppCenter.Distribute.Android.Bindings\\Microsoft.AppCenter.Distribute.Android.Bindings.csproj",
|
||||
"SDK\\AppCenterDistribute\\Microsoft.AppCenter.Distribute.iOS\\Microsoft.AppCenter.Distribute.iOS.csproj"
|
||||
]
|
||||
}
|
||||
}
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -19,8 +19,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Android
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.iOS", "SDK\AppCenter\Microsoft.AppCenter.iOS\Microsoft.AppCenter.iOS.csproj", "{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.iOS.Bindings", "SDK\AppCenter\Microsoft.AppCenter.iOS.Bindings\Microsoft.AppCenter.iOS.Bindings.csproj", "{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{E8119A94-6E9A-4073-983D-C9AB3D93F001}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AppCenterAnalytics", "AppCenterAnalytics", "{A4F89D36-B1BC-4C40-97C0-8D8216B356FC}"
|
||||
|
@ -32,9 +30,6 @@ EndProject
|
|||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Analytics.Android.Bindings", "SDK\AppCenterAnalytics\Microsoft.AppCenter.Analytics.Android.Bindings\Microsoft.AppCenter.Analytics.Android.Bindings.csproj", "{34771DC0-9684-45BE-9C9C-5A686468722C}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Analytics.iOS", "SDK\AppCenterAnalytics\Microsoft.AppCenter.Analytics.iOS\Microsoft.AppCenter.Analytics.iOS.csproj", "{EF5D0090-9E12-45B5-961C-45D787BD80A5}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Analytics.iOS.Bindings", "SDK\AppCenterAnalytics\Microsoft.AppCenter.Analytics.iOS.Bindings\Microsoft.AppCenter.Analytics.iOS.Bindings.csproj", "{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AppCenterDistribute", "AppCenterDistribute", "{843F6812-F5B0-4B7E-9CB5-112CDADAEF19}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Distribute", "SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute\Microsoft.AppCenter.Distribute.csproj", "{2E2927E8-2C9A-4E38-80A7-71FC2212EDAA}"
|
||||
|
@ -45,16 +40,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Distrib
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Distribute.iOS", "SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.iOS\Microsoft.AppCenter.Distribute.iOS.csproj", "{60241627-33BB-45F9-A1B6-6F1CB2BF2C4A}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Distribute.iOS.Bindings", "SDK\AppCenterDistribute\Microsoft.AppCenter.Distribute.iOS.Bindings\Microsoft.AppCenter.Distribute.iOS.Bindings.csproj", "{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AppCenterCrashes", "AppCenterCrashes", "{132CD282-47A0-442A-9F30-A43332C2BEF6}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes.iOS", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.iOS\Microsoft.AppCenter.Crashes.iOS.csproj", "{4936A94C-BE22-4F73-8468-64FA4371FF80}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes.Android.Bindings", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Android.Bindings\Microsoft.AppCenter.Crashes.Android.Bindings.csproj", "{42D541D7-B7C9-45A7-8D4D-8FB5A00668B3}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes.iOS.Bindings", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.iOS.Bindings\Microsoft.AppCenter.Crashes.iOS.Bindings.csproj", "{FCEB9729-627A-4964-B853-1649CA1FA76D}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes.Android", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes.Android\Microsoft.AppCenter.Crashes.Android.csproj", "{D6DB87CA-B8EC-4A38-805F-AFDC7FEC38EB}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AppCenter.Crashes", "SDK\AppCenterCrashes\Microsoft.AppCenter.Crashes\Microsoft.AppCenter.Crashes.csproj", "{2A90310C-3A9A-4E89-840D-CB4F584B7879}"
|
||||
|
@ -155,18 +146,6 @@ Global
|
|||
{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{A3C3F12A-D7A9-4AE5-A252-3BCB63545B09}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A3C3F12A-D7A9-4AE5-A252-3BCB63545B09}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A3C3F12A-D7A9-4AE5-A252-3BCB63545B09}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
|
@ -215,18 +194,6 @@ Global
|
|||
{EF5D0090-9E12-45B5-961C-45D787BD80A5}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{EF5D0090-9E12-45B5-961C-45D787BD80A5}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{EF5D0090-9E12-45B5-961C-45D787BD80A5}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{2E2927E8-2C9A-4E38-80A7-71FC2212EDAA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{2E2927E8-2C9A-4E38-80A7-71FC2212EDAA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{2E2927E8-2C9A-4E38-80A7-71FC2212EDAA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
|
@ -275,18 +242,6 @@ Global
|
|||
{60241627-33BB-45F9-A1B6-6F1CB2BF2C4A}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{60241627-33BB-45F9-A1B6-6F1CB2BF2C4A}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{60241627-33BB-45F9-A1B6-6F1CB2BF2C4A}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{4936A94C-BE22-4F73-8468-64FA4371FF80}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4936A94C-BE22-4F73-8468-64FA4371FF80}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4936A94C-BE22-4F73-8468-64FA4371FF80}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
|
@ -311,18 +266,6 @@ Global
|
|||
{42D541D7-B7C9-45A7-8D4D-8FB5A00668B3}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{42D541D7-B7C9-45A7-8D4D-8FB5A00668B3}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{42D541D7-B7C9-45A7-8D4D-8FB5A00668B3}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{D6DB87CA-B8EC-4A38-805F-AFDC7FEC38EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D6DB87CA-B8EC-4A38-805F-AFDC7FEC38EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D6DB87CA-B8EC-4A38-805F-AFDC7FEC38EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
|
@ -354,7 +297,6 @@ Global
|
|||
{119C1730-E109-4BC9-AA89-9DCA2C50BFD5} = {C6395FB6-8473-4A4B-9FA4-2A187F0B0B10}
|
||||
{C3B5BA33-DA39-400D-B5B3-85C68354FD74} = {C6395FB6-8473-4A4B-9FA4-2A187F0B0B10}
|
||||
{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0} = {C6395FB6-8473-4A4B-9FA4-2A187F0B0B10}
|
||||
{5490FECC-63B2-4543-B4FE-EDD8D1BD8351} = {C6395FB6-8473-4A4B-9FA4-2A187F0B0B10}
|
||||
{115F38E3-5DD5-469E-8A06-AA6BE4B99777} = {E8119A94-6E9A-4073-983D-C9AB3D93F001}
|
||||
{CA4FB145-763C-4014-B0AF-F5884412E9F3} = {E8119A94-6E9A-4073-983D-C9AB3D93F001}
|
||||
{CC0B2B0C-5150-477E-A687-1218C64E3367} = {E8119A94-6E9A-4073-983D-C9AB3D93F001}
|
||||
|
@ -363,17 +305,14 @@ Global
|
|||
{93E4ADA5-8D7A-44BF-9549-0AD76AB86E8F} = {A4F89D36-B1BC-4C40-97C0-8D8216B356FC}
|
||||
{34771DC0-9684-45BE-9C9C-5A686468722C} = {A4F89D36-B1BC-4C40-97C0-8D8216B356FC}
|
||||
{EF5D0090-9E12-45B5-961C-45D787BD80A5} = {A4F89D36-B1BC-4C40-97C0-8D8216B356FC}
|
||||
{45EA6818-8759-4E48-BD7A-E240E4D4B0F7} = {A4F89D36-B1BC-4C40-97C0-8D8216B356FC}
|
||||
{843F6812-F5B0-4B7E-9CB5-112CDADAEF19} = {79390575-9F0F-43F3-9BDA-8E3491693230}
|
||||
{2E2927E8-2C9A-4E38-80A7-71FC2212EDAA} = {843F6812-F5B0-4B7E-9CB5-112CDADAEF19}
|
||||
{AD38DEE9-8A74-4B04-93C3-0831B55E7254} = {843F6812-F5B0-4B7E-9CB5-112CDADAEF19}
|
||||
{11D31A79-0F09-4708-8097-3D1C5D886547} = {843F6812-F5B0-4B7E-9CB5-112CDADAEF19}
|
||||
{60241627-33BB-45F9-A1B6-6F1CB2BF2C4A} = {843F6812-F5B0-4B7E-9CB5-112CDADAEF19}
|
||||
{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462} = {843F6812-F5B0-4B7E-9CB5-112CDADAEF19}
|
||||
{132CD282-47A0-442A-9F30-A43332C2BEF6} = {79390575-9F0F-43F3-9BDA-8E3491693230}
|
||||
{4936A94C-BE22-4F73-8468-64FA4371FF80} = {132CD282-47A0-442A-9F30-A43332C2BEF6}
|
||||
{42D541D7-B7C9-45A7-8D4D-8FB5A00668B3} = {132CD282-47A0-442A-9F30-A43332C2BEF6}
|
||||
{FCEB9729-627A-4964-B853-1649CA1FA76D} = {132CD282-47A0-442A-9F30-A43332C2BEF6}
|
||||
{D6DB87CA-B8EC-4A38-805F-AFDC7FEC38EB} = {132CD282-47A0-442A-9F30-A43332C2BEF6}
|
||||
{2A90310C-3A9A-4E89-840D-CB4F584B7879} = {132CD282-47A0-442A-9F30-A43332C2BEF6}
|
||||
{C6C4937C-D5F4-4E00-8B51-8D826AD83C5E} = {C6395FB6-8473-4A4B-9FA4-2A187F0B0B10}
|
||||
|
|
|
@ -28,20 +28,6 @@
|
|||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<CustomCommands>
|
||||
<CustomCommands>
|
||||
<Command>
|
||||
<type>BeforeBuild</type>
|
||||
<command>sh build.sh -t=externals-android</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
<Command>
|
||||
<type>AfterClean</type>
|
||||
<command>rm -rf externals/android</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
</CustomCommands>
|
||||
</CustomCommands>
|
||||
<NoWarn>CS0109</NoWarn>
|
||||
<Commandlineparameters></Commandlineparameters>
|
||||
</PropertyGroup>
|
||||
|
@ -53,20 +39,6 @@
|
|||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<CustomCommands>
|
||||
<CustomCommands>
|
||||
<Command>
|
||||
<type>BeforeBuild</type>
|
||||
<command>sh build.sh -t=externals-android</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
<Command>
|
||||
<type>AfterClean</type>
|
||||
<command>rm -rf externals/android</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
</CustomCommands>
|
||||
</CustomCommands>
|
||||
<NoWarn>CS0109</NoWarn>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
|
|
|
@ -7,6 +7,9 @@ namespace Microsoft.AppCenter
|
|||
|
||||
public static partial class AppCenterLog
|
||||
{
|
||||
/// <summary>
|
||||
/// The log tag for this SDK. All logs emitted at the SDK level will contain this tag.
|
||||
/// </summary>
|
||||
public const string LogTag = nameof(AppCenter) + "Xamarin";
|
||||
|
||||
public static void Verbose(string tag, string message)
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
public abstract class AppCenterService : IAppCenterService
|
||||
{
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
public interface IAppCenterService
|
||||
{
|
||||
/* This interface should remain empty */
|
||||
}
|
||||
}
|
|
@ -47,8 +47,6 @@
|
|||
<Reference Include="System" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="AppCenterService.cs" />
|
||||
<Compile Include="IAppCenterService.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="AppCenter.cs" />
|
||||
<Compile Include="AppCenterLog.cs" />
|
||||
|
|
|
@ -5,10 +5,8 @@ using Foundation;
|
|||
using ObjCRuntime;
|
||||
using System;
|
||||
|
||||
namespace Microsoft.AppCenter.iOS.Bindings
|
||||
namespace Microsoft.AppCenter.Apple.Bindings
|
||||
{
|
||||
interface IMSACService { }
|
||||
|
||||
// typedef (void (^)(BOOL))completionHandler();
|
||||
delegate void MSACSetLogLevelCompletionHandlerCallback(bool result);
|
||||
|
||||
|
@ -16,7 +14,7 @@ namespace Microsoft.AppCenter.iOS.Bindings
|
|||
delegate string MSACLogMessageProvider();
|
||||
|
||||
// typedef void (^MSACLogHandler)(MSACLogMessageProvider, MSACLogLevel, const char *, const char *, uint);
|
||||
unsafe delegate void MSACLogHandler(MSACLogMessageProvider arg0, MSACLogLevel arg1, IntPtr arg2, IntPtr arg3, uint arg4);
|
||||
unsafe delegate void MSACLogHandler([CCallback] MSACLogMessageProvider arg0, MSACLogLevel arg1, IntPtr arg2, IntPtr arg3, uint arg4);
|
||||
//Note: Objective Sharpie tried to bind the above as:
|
||||
// unsafe delegate void MSACLogHandler(MSACLogMessageProvider arg0, MSACLogLevel arg1, string arg2, sbyte* arg3, sbyte* arg4, uint arg5);
|
||||
//But trying to use it as given gave an error.
|
||||
|
@ -261,19 +259,11 @@ namespace Microsoft.AppCenter.iOS.Bindings
|
|||
[BaseType(typeof(NSObject))]
|
||||
interface MSACService
|
||||
{
|
||||
// @required +(BOOL)isEnabled;
|
||||
[Static]
|
||||
[Export("isEnabled")]
|
||||
bool GetEnabled();
|
||||
|
||||
[Static]
|
||||
[Export("setEnabled:")]
|
||||
void SetEnabled(bool val);
|
||||
}
|
||||
|
||||
// @interface MSACServiceAbstract : NSObject <MSACService>
|
||||
[BaseType(typeof(MSACService))]
|
||||
interface MSACServiceAbstract : IMSACService
|
||||
interface MSACServiceAbstract : MSACService
|
||||
{
|
||||
}
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>net6.0-ios;net6.0-macos</TargetFrameworks>
|
||||
<IsBindingProject>true</IsBindingProject>
|
||||
<Optimize>true</Optimize>
|
||||
<Copyright>Microsoft Corp. All rights reserved.</Copyright>
|
||||
<Product>Microsoft.AppCenter.Core</Product>
|
||||
<Company>Microsoft Corporation</Company>
|
||||
<Version>4.5.4-SNAPSHOT</Version>
|
||||
<AssemblyVersion>0.0.0.0</AssemblyVersion>
|
||||
<FileVersion>4.5.4.0</FileVersion>
|
||||
<RootNamespace>Microsoft.AppCenter</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter</AssemblyName>
|
||||
<AssemblyTitle>Microsoft.AppCenter.Core</AssemblyTitle>
|
||||
<DocumentationFile>bin\$(Configuration)\$(TargetFramework)\Microsoft.AppCenter.xml</DocumentationFile>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<NoBindingEmbedding>false</NoBindingEmbedding>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="$(TargetFramework.EndsWith('-ios'))">
|
||||
<SupportedOSPlatformVersion>10.0</SupportedOSPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="$(TargetFramework.EndsWith('-macos'))">
|
||||
<SupportedOSPlatformVersion>10.14</SupportedOSPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<MtouchLink>SdkOnly</MtouchLink>
|
||||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<MtouchLink>SdkOnly</MtouchLink>
|
||||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
<ObjcBindingCoreSource Include="StructsAndEnums.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(TargetFramework.EndsWith('-ios'))">
|
||||
<NativeReference Include="..\..\..\externals\apple\ios\AppCenter.a">
|
||||
<Kind>Static</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
<LinkerFlags>-lsqlite3</LinkerFlags>
|
||||
<Frameworks>CoreTelephony Security SystemConfiguration</Frameworks>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(TargetFramework.EndsWith('-macos'))">
|
||||
<NativeReference Include="..\..\..\externals\apple\macOS\AppCenter.framework">
|
||||
<Kind>Framework</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
<LinkerFlags>-lsqlite3</LinkerFlags>
|
||||
<Frameworks>CoreTelephony Security SystemConfiguration</Frameworks>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Shared.Apple\Microsoft.AppCenter.Shared.Apple.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Shared.Xamarin\Microsoft.AppCenter.Shared.Xamarin.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems" Label="Shared" />
|
||||
</Project>
|
|
@ -4,7 +4,7 @@
|
|||
using System;
|
||||
using ObjCRuntime;
|
||||
|
||||
namespace Microsoft.AppCenter.iOS.Bindings
|
||||
namespace Microsoft.AppCenter.Apple.Bindings
|
||||
{
|
||||
[Native]
|
||||
public enum MSACLogLevel : ulong
|
|
@ -1,360 +0,0 @@
|
|||
using Foundation;
|
||||
using ObjCRuntime;
|
||||
using System;
|
||||
|
||||
namespace Microsoft.AppCenter.MacOS.Bindings
|
||||
{
|
||||
interface IMSACService { }
|
||||
|
||||
// typedef NSString * (^MSACLogMessageProvider)();
|
||||
delegate string MSACLogMessageProvider();
|
||||
|
||||
// typedef (void (^)(BOOL))completionHandler();
|
||||
delegate void MSACSetLogLevelCompletionHandlerCallback(bool result);
|
||||
|
||||
// typedef void (^MSACLogHandler)(MSACLogMessageProvider, MSACLogLevel, const char *, const char *, uint);
|
||||
unsafe delegate void MSACLogHandler(MSACLogMessageProvider arg0, MSACLogLevel arg1, IntPtr arg2, IntPtr arg3, uint arg4);
|
||||
//Note: Objective Sharpie tried to bind the above as:
|
||||
// unsafe delegate void MSACLogHandler(MSACLogMessageProvider arg0, MSACLogLevel arg1, string arg2, sbyte* arg3, sbyte* arg4, uint arg5);
|
||||
//But trying to use it as given gave an error.
|
||||
|
||||
// @interface MSACWrapperSdk : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACWrapperSdk
|
||||
{
|
||||
// @property (readonly, nonatomic) NSString * wrapperSdkVersion;
|
||||
[Export("wrapperSdkVersion")]
|
||||
string WrapperSdkVersion { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * wrapperSdkName;
|
||||
[Export("wrapperSdkName")]
|
||||
string WrapperSdkName { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * wrapperRuntimeVersion;
|
||||
[Export("wrapperRuntimeVersion")]
|
||||
string WrapperRuntimeVersion { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * liveUpdateReleaseLabel;
|
||||
[Export("liveUpdateReleaseLabel")]
|
||||
string LiveUpdateReleaseLabel { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * liveUpdateDeploymentKey;
|
||||
[Export("liveUpdateDeploymentKey")]
|
||||
string LiveUpdateDeploymentKey { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * liveUpdatePackageHash;
|
||||
[Export("liveUpdatePackageHash")]
|
||||
string LiveUpdatePackageHash { get; }
|
||||
|
||||
// -(BOOL)isEqual:(MSACWrapperSdk *)wrapperSdk;
|
||||
[Export("isEqual:")]
|
||||
bool IsEqual(MSACWrapperSdk wrapperSdk);
|
||||
|
||||
// initWithWrapperSdkVersion:(NSString *)wrapperSdkVersion wrapperSdkName:(NSString *)wrapperSdkName wrapperRuntimeVersion:(NSString*)wrapperRuntimeVersion liveUpdateReleaseLabel:(NSString*)liveUpdateReleaseLabel liveUpdateDeploymentKey:(NSString*)liveUpdateDeploymentKey liveUpdatePackageHash:(NSString*)liveUpdatePackageHash;
|
||||
[Export("initWithWrapperSdkVersion:wrapperSdkName:wrapperRuntimeVersion:liveUpdateReleaseLabel:liveUpdateDeploymentKey:liveUpdatePackageHash:")]
|
||||
IntPtr Constructor([NullAllowed] string wrapperSdkVersion, [NullAllowed] string wrapperSdkName, [NullAllowed] string wrapperRuntimeVersion, [NullAllowed] string liveUpdateReleaseLabel, [NullAllowed] string liveUpdateDeploymentKey, [NullAllowed] string liveUpdatePackageHash);
|
||||
}
|
||||
|
||||
// @interface MSACKeychainUtil : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACKeychainUtil
|
||||
{
|
||||
// + (BOOL)storeString:(NSString *)string forKey:(NSString *)key;
|
||||
[Static]
|
||||
[Export("storeString:forKey:")]
|
||||
void StoreString(NSString value, NSString key);
|
||||
|
||||
// + (NSString *_Nullable)stringForKey:(NSString *)key statusCode:(OSStatus *_Nullable)statusCode;
|
||||
[Static]
|
||||
[Export("stringForKey:statusCode:")]
|
||||
NSString StringForKey(NSString key, out int errorCode);
|
||||
|
||||
// + (BOOL) clear;
|
||||
[Static]
|
||||
[Export("clear")]
|
||||
bool Clear();
|
||||
}
|
||||
|
||||
// @interface MSACDevice : MSACWrapperSdk
|
||||
[BaseType(typeof(MSACWrapperSdk))]
|
||||
interface MSACDevice
|
||||
{
|
||||
// @property (readonly, nonatomic) NSString * sdkName;
|
||||
[Export("sdkName")]
|
||||
string SdkName { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * sdkVersion;
|
||||
[Export("sdkVersion")]
|
||||
string SdkVersion { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * model;
|
||||
[Export("model")]
|
||||
string Model { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * oemName;
|
||||
[Export("oemName")]
|
||||
string OemName { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * osName;
|
||||
[Export("osName")]
|
||||
string OsName { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * osVersion;
|
||||
[Export("osVersion")]
|
||||
string OsVersion { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * osBuild;
|
||||
[Export("osBuild")]
|
||||
string OsBuild { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSNumber * osApiLevel;
|
||||
[Export("osApiLevel")]
|
||||
NSNumber OsApiLevel { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * locale;
|
||||
[Export("locale")]
|
||||
string Locale { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSNumber * timeZoneOffset;
|
||||
[Export("timeZoneOffset")]
|
||||
NSNumber TimeZoneOffset { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * screenSize;
|
||||
[Export("screenSize")]
|
||||
string ScreenSize { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * appVersion;
|
||||
[Export("appVersion")]
|
||||
string AppVersion { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * carrierName;
|
||||
[Export("carrierName")]
|
||||
string CarrierName { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * carrierCountry;
|
||||
[Export("carrierCountry")]
|
||||
string CarrierCountry { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * appBuild;
|
||||
[Export("appBuild")]
|
||||
string AppBuild { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * appNamespace;
|
||||
[Export("appNamespace")]
|
||||
string AppNamespace { get; }
|
||||
|
||||
// -(BOOL)isEqual:(MSACDevice *)device;
|
||||
[Export("isEqual:")]
|
||||
bool IsEqual(MSACDevice device);
|
||||
}
|
||||
|
||||
// @interface MSACAppCenter : NSObject
|
||||
[BaseType(typeof(NSObject), Name = "MSACAppCenter")]
|
||||
interface MSACAppCenter
|
||||
{
|
||||
// +(instancetype)sharedInstance;
|
||||
[Static]
|
||||
[Export("sharedInstance")]
|
||||
MSACAppCenter SharedInstance();
|
||||
|
||||
// +(void)resetSharedInstance
|
||||
[Static]
|
||||
[Export("resetSharedInstance")]
|
||||
void ResetSharedInstance();
|
||||
|
||||
// +(void)configureWithAppSecret:(NSString *)appSecret;
|
||||
[Static]
|
||||
[Export("configureWithAppSecret:")]
|
||||
void ConfigureWithAppSecret([NullAllowed] string appSecret);
|
||||
|
||||
// +(void)start:(NSString *)appSecret withServices:(NSArray<Class> *)services;
|
||||
[Static]
|
||||
[Export("start:withServices:")]
|
||||
void Start([NullAllowed] string appSecret, Class[] services);
|
||||
|
||||
// +(void)startService:(Class)service;
|
||||
[Static]
|
||||
[Export("startService:")]
|
||||
void StartService(Class service);
|
||||
|
||||
// +(BOOL)isConfigured;
|
||||
[Static]
|
||||
[Export("isConfigured")]
|
||||
bool IsConfigured();
|
||||
|
||||
// +(void)setLogUrl:(NSString *)setLogUrl;
|
||||
[Static]
|
||||
[Export("setLogUrl:")]
|
||||
void SetLogUrl([NullAllowed] string logUrl);
|
||||
|
||||
// + (void)setCountryCode:(NSString *)countryCode
|
||||
[Static]
|
||||
[Export("setCountryCode:")]
|
||||
void SetCountryCode(string countryCode);
|
||||
|
||||
// +(void)setEnabled:(BOOL)isEnabled;
|
||||
[Static]
|
||||
[Export("setEnabled:")]
|
||||
void SetEnabled(bool isEnabled);
|
||||
|
||||
// +(BOOL)isEnabled;
|
||||
[Static]
|
||||
[Export("isEnabled")]
|
||||
bool IsEnabled();
|
||||
|
||||
// +(MSACLogLevel)logLevel;
|
||||
// +(void)setLogLevel:(MSACLogLevel)logLevel;
|
||||
[Static]
|
||||
[Export("logLevel")]
|
||||
MSACLogLevel LogLevel();
|
||||
|
||||
[Static]
|
||||
[Export("setLogLevel:")]
|
||||
void SetLogLevel(MSACLogLevel logLevel);
|
||||
|
||||
// + (void)setNetworkRequestsAllowed:(BOOL)isAllowed;
|
||||
[Static]
|
||||
[Export("setNetworkRequestsAllowed:")]
|
||||
void SetNetworkRequestsAllowed(bool isAllowed);
|
||||
|
||||
// + (BOOL)isNetworkRequestsAllowed;
|
||||
[Static]
|
||||
[Export("isNetworkRequestsAllowed")]
|
||||
bool IsNetworkRequestsAllowed();
|
||||
|
||||
// + (void)setUserId:(NSString *)userId;
|
||||
[Static]
|
||||
[Export("setUserId:")]
|
||||
void SetUserId([NullAllowed] string userId);
|
||||
|
||||
// +(void)setLogHandler:(MSACLogHandler)logHandler;
|
||||
[Static]
|
||||
[Export("setLogHandler:")]
|
||||
void SetLogHandler(MSACLogHandler logHandler);
|
||||
|
||||
// +(void)setWrapperSdk:(MSACWrapperSdk *)wrapperSdk;
|
||||
[Static]
|
||||
[Export("setWrapperSdk:")]
|
||||
void SetWrapperSdk(MSACWrapperSdk wrapperSdk);
|
||||
|
||||
// +(NSUUID *)installId;
|
||||
[Static]
|
||||
[Export("installId")]
|
||||
NSUuid InstallId();
|
||||
|
||||
// +(BOOL)isDebuggerAttached;
|
||||
[Static]
|
||||
[Export("isDebuggerAttached")]
|
||||
bool IsDebuggerAttached();
|
||||
|
||||
// +(void)setMaxStorageSize:(long)sizeInBytes completionHandler(void (^)(BOOL))completionHandler;
|
||||
[Static]
|
||||
[Export("setMaxStorageSize:completionHandler:")]
|
||||
void SetMaxStorageSize(long sizeInBytes, MSACSetLogLevelCompletionHandlerCallback callback);
|
||||
}
|
||||
|
||||
// @protocol MSACService <NSObject>
|
||||
[Protocol, Model]
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACService
|
||||
{
|
||||
// @required +(BOOL)isEnabled;
|
||||
[Static]
|
||||
[Export("isEnabled")]
|
||||
bool GetEnabled();
|
||||
|
||||
[Static]
|
||||
[Export("setEnabled:")]
|
||||
void SetEnabled(bool val);
|
||||
}
|
||||
|
||||
// @interface MSACServiceAbstract : NSObject <MSACService>
|
||||
[BaseType(typeof(MSACService))]
|
||||
interface MSACServiceAbstract : IMSACService
|
||||
{
|
||||
}
|
||||
|
||||
// @interface MSACLogger : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACLogger
|
||||
{
|
||||
// +(void)logMessage:(MSACLogMessageProvider)messageProvider level:(MSACLogLevel)loglevel tag:(NSString *)tag file:(const char *)file function:(const char *)function line:(uint)line;
|
||||
[Static]
|
||||
[Export("logMessage:level:tag:file:function:line:")]
|
||||
unsafe void LogMessage(MSACLogMessageProvider messageProvider, MSACLogLevel loglevel, string tag, IntPtr file, IntPtr function, uint line);
|
||||
}
|
||||
|
||||
// @interface MSACWrapperLogger : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACWrapperLogger
|
||||
{
|
||||
// +(void)MSACWrapperLog:(MSACLogMessageProvider)message tag:(NSString *)tag level:(MSACLogLevel)level;
|
||||
[Static]
|
||||
[Export("MSACWrapperLog:tag:level:")]
|
||||
void MSACWrapperLog(MSACLogMessageProvider message, string tag, MSACLogLevel level);
|
||||
}
|
||||
|
||||
// typedef void (^MSACHttpRequestCompletionHandler)(NSData *_Nullable responseBody, NSHTTPURLResponse *_Nullable response, NSError* _Nullable error);
|
||||
delegate void MSACHttpRequestCompletionHandler([NullAllowed] NSData responseBody, [NullAllowed] NSHttpUrlResponse response, [NullAllowed] NSError error);
|
||||
|
||||
// @protocol MSACHttpClientProtocol <NSObject>
|
||||
[Protocol, Model]
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACHttpClientProtocol
|
||||
{
|
||||
// @property(nonatomic, weak, nullable) id<MSACHttpClientDelegate> delegate;
|
||||
// Using a C# property, even when using the Wrap/Weak pattern, we get "setDelegate:]: unrecognized selector sent to instance", work around by using a setter method as we don't need the getter
|
||||
[Export("setDelegate:")]
|
||||
void SetDelegate([NullAllowed] MSACHttpClientDelegate httpClientDelegate);
|
||||
|
||||
// @required - (void)sendAsync:(NSURL *)url
|
||||
// method:(NSString*) method
|
||||
// headers:(nullable NSDictionary<NSString*, NSString*> *)headers
|
||||
// data:(nullable NSData *)data
|
||||
// completionHandler:(nullable MSACHttpRequestCompletionHandler) completionHandler;
|
||||
[Export("sendAsync:method:headers:data:completionHandler:")]
|
||||
void SendAsync(NSUrl url, NSString method, [NullAllowed] NSDictionary<NSString, NSString> headers, [NullAllowed] NSData data, [NullAllowed] MSACHttpRequestCompletionHandler completionHandler);
|
||||
|
||||
// @required - (void) sendAsync:(NSURL*) url
|
||||
// method:(NSString*) method
|
||||
// headers:(nullable NSDictionary<NSString*, NSString*> *)headers
|
||||
// data:(nullable NSData *)data
|
||||
// retryIntervals:(NSArray*) retryIntervals
|
||||
// compressionEnabled:(BOOL) compressionEnabled
|
||||
// completionHandler:(nullable MSACHttpRequestCompletionHandler) completionHandler;
|
||||
[Export("sendAsync:method:headers:data:retryIntervals:compressionEnabled:completionHandler:")]
|
||||
void SendAsync(NSUrl url, NSString method, [NullAllowed] NSDictionary<NSString, NSString> headers, [NullAllowed] NSData data, NSArray retryIntervals, bool compressionEnabled, [NullAllowed] MSACHttpRequestCompletionHandler completionHandler);
|
||||
|
||||
// @required - (void)pause;
|
||||
[Export("pause")]
|
||||
void Pause();
|
||||
|
||||
// @required - (void)resume;
|
||||
[Export("resume")]
|
||||
void Resume();
|
||||
|
||||
// @required - (void)setEnabled:(BOOL)isEnabled;
|
||||
[Export("setEnabled:")]
|
||||
void SetEnabled(bool enabled);
|
||||
}
|
||||
|
||||
// @protocol MSACHttpClientDelegate <NSObject>
|
||||
[Protocol]
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACHttpClientDelegate
|
||||
{
|
||||
// -(void)willSendHTTPRequestToURL:(NSURL *)url withHeaders:(nullable NSDictionary<NSString *, NSString *> *)headers;
|
||||
[Export("willSendHTTPRequestToURL:withHeaders:")]
|
||||
void WillSendHTTPRequestToURL(NSUrl url, [NullAllowed] NSDictionary<NSString, NSString> headers);
|
||||
}
|
||||
|
||||
// @interface MSACDependencyConfiguration : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACDependencyConfiguration
|
||||
{
|
||||
// @property(class, nonatomic) id<MSACHttpClientProtocol> httpClient;
|
||||
[Static]
|
||||
[Export("httpClient")]
|
||||
MSACHttpClientProtocol HttpClient { get; set; }
|
||||
}
|
||||
}
|
|
@ -1,91 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}</ProjectGuid>
|
||||
<ProjectTypeGuids>{810C163F-4746-4721-8B8E-88A3673A62EA};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>Microsoft.AppCenter.MacOS.Binding</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter.MacOS.Bindings</AssemblyName>
|
||||
<MacResourcePrefix>Resources</MacResourcePrefix>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Debug</OutputPath>
|
||||
<DefineConstants>DEBUG;</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<CustomCommands>
|
||||
<CustomCommands>
|
||||
<Command>
|
||||
<type>BeforeBuild</type>
|
||||
<command>sh build.sh -t-Externals-Apple</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
<Command>
|
||||
<type>AfterClean</type>
|
||||
<command>rm -rf external/apple</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
</CustomCommands>
|
||||
</CustomCommands>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release</OutputPath>
|
||||
<DefineConstants />
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<CustomCommands>
|
||||
<CustomCommands>
|
||||
<Command>
|
||||
<type>BeforeBuild</type>
|
||||
<command>sh build.sh -t-Externals-Apple</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
<Command>
|
||||
<type>AfterClean</type>
|
||||
<command>rm -rf external/apple</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
</CustomCommands>
|
||||
</CustomCommands>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="Xamarin.Mac" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingCoreSource Include="StructsAndEnums.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\macOS\AppCenter.framework">
|
||||
<Kind>Framework</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
<LinkerFlags>-lsqlite3</LinkerFlags>
|
||||
<Frameworks>CoreTelephony Security SystemConfiguration</Frameworks>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.ObjcBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,34 +0,0 @@
|
|||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
|
||||
using Foundation;
|
||||
|
||||
// This attribute allows you to mark your assemblies as “safe to link”.
|
||||
// When the attribute is present, the linker—if enabled—will process the assembly
|
||||
// even if you’re using the “Link SDK assemblies only” option, which is the default for device builds.
|
||||
|
||||
[assembly: AssemblyMetadata("IsTrimmable", "False")]
|
||||
|
||||
// Information about this assembly is defined by the following attributes.
|
||||
// Change them to the values specific to your project.
|
||||
|
||||
[assembly: AssemblyTitle("Microsoft.AppCenter.MacOS.Binding")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("")]
|
||||
[assembly: AssemblyCopyright("${AuthorCopyright}")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
|
||||
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
|
||||
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
|
||||
|
||||
[assembly: AssemblyVersion("1.0.*")]
|
||||
|
||||
// The following attributes are used to specify the signing key for the assembly,
|
||||
// if desired. See the Mono documentation for more information about signing.
|
||||
|
||||
//[assembly: AssemblyDelaySign(false)]
|
||||
//[assembly: AssemblyKeyFile("")]
|
|
@ -1,17 +0,0 @@
|
|||
using System;
|
||||
using ObjCRuntime;
|
||||
|
||||
namespace Microsoft.AppCenter.MacOS.Bindings
|
||||
{
|
||||
[Native]
|
||||
public enum MSACLogLevel : ulong
|
||||
{
|
||||
Verbose = 2,
|
||||
Debug = 3,
|
||||
Info = 4,
|
||||
Warning = 5,
|
||||
Error = 6,
|
||||
Assert = 7,
|
||||
None = 99
|
||||
}
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
<Project>
|
||||
<Target Name="FixAppCenterSymlink" AfterTargets="_CollectFrameworks">
|
||||
<Message Text="symlinking AppCenter" />
|
||||
<Exec Command="cd $(AppBundleDir)\Contents\Frameworks\AppCenter.framework\ ; rm AppCenter ; ln -s Versions\A\AppCenter AppCenter" />
|
||||
</Target>
|
||||
</Project>
|
|
@ -1,207 +0,0 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using ObjCRuntime;
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
using MacOSLogLevel = Microsoft.AppCenter.MacOS.Bindings.MSACLogLevel;
|
||||
using MacOSAppCenter = Microsoft.AppCenter.MacOS.Bindings.MSACAppCenter;
|
||||
using MacOSWrapperSdk = Microsoft.AppCenter.MacOS.Bindings.MSACWrapperSdk;
|
||||
|
||||
public partial class AppCenter
|
||||
{
|
||||
/* The key identifier for parsing app secrets */
|
||||
const string PlatformIdentifier = "macos";
|
||||
|
||||
internal AppCenter()
|
||||
{
|
||||
}
|
||||
|
||||
static LogLevel PlatformLogLevel
|
||||
{
|
||||
get
|
||||
{
|
||||
var val = MacOSAppCenter.LogLevel();
|
||||
switch (val)
|
||||
{
|
||||
case MacOSLogLevel.Verbose:
|
||||
return LogLevel.Verbose;
|
||||
case MacOSLogLevel.Debug:
|
||||
return LogLevel.Debug;
|
||||
case MacOSLogLevel.Info:
|
||||
return LogLevel.Info;
|
||||
case MacOSLogLevel.Warning:
|
||||
return LogLevel.Warn;
|
||||
case MacOSLogLevel.Error:
|
||||
return LogLevel.Error;
|
||||
case MacOSLogLevel.Assert:
|
||||
return LogLevel.Assert;
|
||||
case MacOSLogLevel.None:
|
||||
return LogLevel.None;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(val), val, null);
|
||||
}
|
||||
}
|
||||
set
|
||||
{
|
||||
MacOSLogLevel loglevel;
|
||||
switch (value)
|
||||
{
|
||||
case LogLevel.Verbose:
|
||||
loglevel = MacOSLogLevel.Verbose;
|
||||
break;
|
||||
case LogLevel.Debug:
|
||||
loglevel = MacOSLogLevel.Debug;
|
||||
break;
|
||||
case LogLevel.Info:
|
||||
loglevel = MacOSLogLevel.Info;
|
||||
break;
|
||||
case LogLevel.Warn:
|
||||
loglevel = MacOSLogLevel.Warning;
|
||||
break;
|
||||
case LogLevel.Error:
|
||||
loglevel = MacOSLogLevel.Error;
|
||||
break;
|
||||
case LogLevel.Assert:
|
||||
loglevel = MacOSLogLevel.Assert;
|
||||
break;
|
||||
case LogLevel.None:
|
||||
loglevel = MacOSLogLevel.None;
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(value), value, null);
|
||||
}
|
||||
MacOSAppCenter.SetLogLevel(loglevel);
|
||||
}
|
||||
}
|
||||
|
||||
static bool PlatformIsNetworkRequestsAllowed
|
||||
{
|
||||
get => MacOSAppCenter.IsNetworkRequestsAllowed();
|
||||
set => MacOSAppCenter.SetNetworkRequestsAllowed(value);
|
||||
}
|
||||
|
||||
static void PlatformSetUserId(string userId)
|
||||
{
|
||||
MacOSAppCenter.SetUserId(userId);
|
||||
}
|
||||
|
||||
static void PlatformSetLogUrl(string logUrl)
|
||||
{
|
||||
MacOSAppCenter.SetLogUrl(logUrl);
|
||||
}
|
||||
|
||||
static void PlatformSetCountryCode(string countryCode)
|
||||
{
|
||||
MacOSAppCenter.SetCountryCode(countryCode);
|
||||
}
|
||||
|
||||
static bool PlatformConfigured
|
||||
{
|
||||
get
|
||||
{
|
||||
return MacOSAppCenter.IsConfigured();
|
||||
}
|
||||
}
|
||||
|
||||
static void PlatformConfigure(string appSecret)
|
||||
{
|
||||
SetWrapperSdk();
|
||||
MacOSAppCenter.ConfigureWithAppSecret(appSecret);
|
||||
}
|
||||
|
||||
static void PlatformStart(params Type[] services)
|
||||
{
|
||||
SetWrapperSdk();
|
||||
foreach (var service in GetServices(services))
|
||||
{
|
||||
MacOSAppCenter.StartService(service);
|
||||
}
|
||||
}
|
||||
|
||||
static void PlatformStart(string appSecret, params Type[] services)
|
||||
{
|
||||
SetWrapperSdk();
|
||||
string parsedSecret;
|
||||
try
|
||||
{
|
||||
parsedSecret = GetSecretAndTargetForPlatform(appSecret, PlatformIdentifier);
|
||||
}
|
||||
catch (AppCenterException ex)
|
||||
{
|
||||
AppCenterLog.Assert(AppCenterLog.LogTag, ex.Message);
|
||||
return;
|
||||
}
|
||||
MacOSAppCenter.Start(parsedSecret, GetServices(services));
|
||||
}
|
||||
|
||||
static Task<bool> PlatformIsEnabledAsync()
|
||||
{
|
||||
return Task.FromResult(MacOSAppCenter.IsEnabled());
|
||||
}
|
||||
|
||||
static Task PlatformSetEnabledAsync(bool enabled)
|
||||
{
|
||||
MacOSAppCenter.SetEnabled(enabled);
|
||||
return Task.FromResult(default(object));
|
||||
}
|
||||
|
||||
static Task<Guid?> PlatformGetInstallIdAsync()
|
||||
{
|
||||
Guid? installId = Guid.Parse(MacOSAppCenter.InstallId().AsString());
|
||||
return Task.FromResult(installId);
|
||||
}
|
||||
|
||||
static Class[] GetServices(IEnumerable<Type> services)
|
||||
{
|
||||
var classes = new List<Class>();
|
||||
foreach (var t in services)
|
||||
{
|
||||
var bindingType = GetBindingType(t);
|
||||
if (bindingType != null)
|
||||
{
|
||||
var aClass = GetClassForType(bindingType);
|
||||
if (aClass != null)
|
||||
{
|
||||
classes.Add(aClass);
|
||||
}
|
||||
}
|
||||
}
|
||||
return classes.ToArray();
|
||||
}
|
||||
|
||||
static Class GetClassForType(Type type)
|
||||
{
|
||||
IntPtr classHandle = Class.GetHandle(type);
|
||||
if (classHandle != IntPtr.Zero)
|
||||
{
|
||||
return new Class(classHandle);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
static Type GetBindingType(Type type)
|
||||
{
|
||||
return (Type)type.GetProperty("BindingType")?.GetValue(null, null);
|
||||
}
|
||||
|
||||
static void SetWrapperSdk()
|
||||
{
|
||||
MacOSWrapperSdk wrapperSdk = new MacOSWrapperSdk(WrapperSdk.Version, WrapperSdk.Name, Constants.Version, null, null, null);
|
||||
MacOSAppCenter.SetWrapperSdk(wrapperSdk);
|
||||
}
|
||||
|
||||
internal static void PlatformUnsetInstance()
|
||||
{
|
||||
MacOSAppCenter.ResetSharedInstance();
|
||||
}
|
||||
|
||||
static Task<bool> PlatformSetMaxStorageSizeAsync(long sizeInBytes)
|
||||
{
|
||||
TaskCompletionSource<bool> taskCompletionSource = new TaskCompletionSource<bool>();
|
||||
MacOSAppCenter.SetMaxStorageSize(sizeInBytes, (result) => taskCompletionSource.SetResult(result));
|
||||
return taskCompletionSource.Task;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,50 +0,0 @@
|
|||
namespace Microsoft.AppCenter
|
||||
{
|
||||
using MacOSMessageProvider = Microsoft.AppCenter.MacOS.Bindings.MSACLogMessageProvider;
|
||||
using MacOSLogger = Microsoft.AppCenter.MacOS.Bindings.MSACWrapperLogger;
|
||||
using MacOSLogLevel = Microsoft.AppCenter.MacOS.Bindings.MSACLogLevel;
|
||||
|
||||
public static partial class AppCenterLog
|
||||
{
|
||||
/// <summary>
|
||||
/// The log tag for this SDK. All logs emitted at the SDK level will contain this tag.
|
||||
/// </summary>
|
||||
public const string LogTag = nameof(AppCenter) + "Xamarin";
|
||||
|
||||
public static void Verbose(string tag, string message)
|
||||
{
|
||||
MacOSMessageProvider msg_provider = () => { return message; };
|
||||
MacOSLogger.MSACWrapperLog(msg_provider, tag, MacOSLogLevel.Verbose);
|
||||
}
|
||||
|
||||
public static void Debug(string tag, string message)
|
||||
{
|
||||
MacOSMessageProvider msg_provider = () => { return message; };
|
||||
MacOSLogger.MSACWrapperLog(msg_provider, tag, MacOSLogLevel.Debug);
|
||||
}
|
||||
|
||||
public static void Info(string tag, string message)
|
||||
{
|
||||
MacOSMessageProvider msg_provider = () => { return message; };
|
||||
MacOSLogger.MSACWrapperLog(msg_provider, tag, MacOSLogLevel.Info);
|
||||
}
|
||||
|
||||
public static void Warn(string tag, string message)
|
||||
{
|
||||
MacOSMessageProvider msg_provider = () => { return message; };
|
||||
MacOSLogger.MSACWrapperLog(msg_provider, tag, MacOSLogLevel.Warning);
|
||||
}
|
||||
|
||||
public static void Error(string tag, string message)
|
||||
{
|
||||
MacOSMessageProvider msg_provider = () => { return message; };
|
||||
MacOSLogger.MSACWrapperLog(msg_provider, tag, MacOSLogLevel.Error);
|
||||
}
|
||||
|
||||
public static void Assert(string tag, string message)
|
||||
{
|
||||
MacOSMessageProvider msg_provider = () => { return message; };
|
||||
MacOSLogger.MSACWrapperLog(msg_provider, tag, MacOSLogLevel.Assert);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
namespace Microsoft.AppCenter
|
||||
{
|
||||
public abstract class AppCenterService : IAppCenterService
|
||||
{
|
||||
}
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
using Microsoft.AppCenter.MacOS.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
public partial class Device
|
||||
{
|
||||
public Device(MSACDevice device)
|
||||
{
|
||||
SdkName = device.SdkName;
|
||||
SdkVersion = device.SdkVersion;
|
||||
Model = device.Model;
|
||||
OemName = device.OemName;
|
||||
OsName = device.OsName;
|
||||
OsVersion = device.OsVersion;
|
||||
OsBuild = device.OsBuild;
|
||||
OsApiLevel = device.OsApiLevel == null ? 0 : device.OsApiLevel.Int32Value;
|
||||
Locale = device.Locale;
|
||||
TimeZoneOffset = device.TimeZoneOffset == null ? 0 : device.TimeZoneOffset.Int32Value;
|
||||
ScreenSize = device.ScreenSize;
|
||||
AppVersion = device.AppVersion;
|
||||
CarrierName = device.CarrierName;
|
||||
CarrierCountry = device.CarrierCountry;
|
||||
AppBuild = device.AppBuild;
|
||||
AppNamespace = device.AppNamespace;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
namespace Microsoft.AppCenter
|
||||
{
|
||||
public interface IAppCenterService
|
||||
{
|
||||
/* This interface should remain empty */
|
||||
}
|
||||
}
|
|
@ -4,7 +4,7 @@
|
|||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{727A9E5A-566A-4DC5-B62B-8F7CA17661B8}</ProjectGuid>
|
||||
<ProjectTypeGuids>{A3F8F2AB-B479-4A4A-A458-A89E7DC349F1};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<ProjectTypeGuids>{810C163F-4746-4721-8B8E-88A3673A62EA};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>Microsoft.AppCenter</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter</AssemblyName>
|
||||
|
@ -14,6 +14,7 @@
|
|||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
|
@ -33,6 +34,7 @@
|
|||
<LinkMode>None</LinkMode>
|
||||
<XamMacArch>x86_64</XamMacArch>
|
||||
<AOTMode>None</AOTMode>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
|
@ -50,29 +52,33 @@
|
|||
<LinkMode>None</LinkMode>
|
||||
<XamMacArch>x86_64</XamMacArch>
|
||||
<AOTMode>None</AOTMode>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="Xamarin.Mac" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="AppCenter.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="AppCenterLog.cs" />
|
||||
<Compile Include="Device.cs" />
|
||||
<Compile Include="IAppCenterService.cs" />
|
||||
<Compile Include="AppCenterService.cs" />
|
||||
<Compile Include="DependencyConfiguration.cs" />
|
||||
<Compile Include="MacOSHttpClientAdapter.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Microsoft.AppCenter.MacOS.Bindings\Microsoft.AppCenter.MacOS.Bindings.csproj">
|
||||
<Project>{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}</Project>
|
||||
<Name>Microsoft.AppCenter.MacOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
<ObjcBindingApiDefinition Include="..\Microsoft.AppCenter.AppleUnified\ApiDefinition.cs">
|
||||
<Link>ApiDefinition.cs</Link>
|
||||
</ObjcBindingApiDefinition>
|
||||
<ObjcBindingCoreSource Include="..\Microsoft.AppCenter.AppleUnified\StructsAndEnums.cs">
|
||||
<Link>StructsAndEnums.cs</Link>
|
||||
</ObjcBindingCoreSource>
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Shared.Xamarin\Microsoft.AppCenter.Shared.Xamarin.projitems" Label="Shared" Condition="Exists('..\Microsoft.AppCenter.Shared.Xamarin\Microsoft.AppCenter.Shared.Xamarin.projitems')" />
|
||||
<Import Project="..\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems" Label="Shared" Condition="Exists('..\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.CSharp.targets" />
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\macOS\AppCenter.framework">
|
||||
<Kind>Framework</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
<LinkerFlags>-lsqlite3</LinkerFlags>
|
||||
<Frameworks>CoreTelephony Security SystemConfiguration</Frameworks>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Shared.Apple\Microsoft.AppCenter.Shared.Apple.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Shared.Xamarin\Microsoft.AppCenter.Shared.Xamarin.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.ObjcBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -5,17 +5,18 @@ using System;
|
|||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using ObjCRuntime;
|
||||
using Microsoft.AppCenter.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
using iOSLogLevel = Microsoft.AppCenter.iOS.Bindings.MSACLogLevel;
|
||||
using iOSAppCenter = Microsoft.AppCenter.iOS.Bindings.MSACAppCenter;
|
||||
using iOSWrapperSdk = Microsoft.AppCenter.iOS.Bindings.MSACWrapperSdk;
|
||||
|
||||
public partial class AppCenter
|
||||
{
|
||||
/* The key identifier for parsing app secrets */
|
||||
#if __IOS__
|
||||
const string PlatformIdentifier = "ios";
|
||||
#elif __MACOS__
|
||||
const string PlatformIdentifier = "macos";
|
||||
#endif
|
||||
|
||||
internal AppCenter()
|
||||
{
|
||||
|
@ -25,22 +26,22 @@ namespace Microsoft.AppCenter
|
|||
{
|
||||
get
|
||||
{
|
||||
var val = iOSAppCenter.LogLevel();
|
||||
var val = MSACAppCenter.LogLevel();
|
||||
switch (val)
|
||||
{
|
||||
case iOSLogLevel.Verbose:
|
||||
case MSACLogLevel.Verbose:
|
||||
return LogLevel.Verbose;
|
||||
case iOSLogLevel.Debug:
|
||||
case MSACLogLevel.Debug:
|
||||
return LogLevel.Debug;
|
||||
case iOSLogLevel.Info:
|
||||
case MSACLogLevel.Info:
|
||||
return LogLevel.Info;
|
||||
case iOSLogLevel.Warning:
|
||||
case MSACLogLevel.Warning:
|
||||
return LogLevel.Warn;
|
||||
case iOSLogLevel.Error:
|
||||
case MSACLogLevel.Error:
|
||||
return LogLevel.Error;
|
||||
case iOSLogLevel.Assert:
|
||||
case MSACLogLevel.Assert:
|
||||
return LogLevel.Assert;
|
||||
case iOSLogLevel.None:
|
||||
case MSACLogLevel.None:
|
||||
return LogLevel.None;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(val), val, null);
|
||||
|
@ -48,70 +49,70 @@ namespace Microsoft.AppCenter
|
|||
}
|
||||
set
|
||||
{
|
||||
iOSLogLevel loglevel;
|
||||
MSACLogLevel loglevel;
|
||||
switch (value)
|
||||
{
|
||||
case LogLevel.Verbose:
|
||||
loglevel = iOSLogLevel.Verbose;
|
||||
loglevel = MSACLogLevel.Verbose;
|
||||
break;
|
||||
case LogLevel.Debug:
|
||||
loglevel = iOSLogLevel.Debug;
|
||||
loglevel = MSACLogLevel.Debug;
|
||||
break;
|
||||
case LogLevel.Info:
|
||||
loglevel = iOSLogLevel.Info;
|
||||
loglevel = MSACLogLevel.Info;
|
||||
break;
|
||||
case LogLevel.Warn:
|
||||
loglevel = iOSLogLevel.Warning;
|
||||
loglevel = MSACLogLevel.Warning;
|
||||
break;
|
||||
case LogLevel.Error:
|
||||
loglevel = iOSLogLevel.Error;
|
||||
loglevel = MSACLogLevel.Error;
|
||||
break;
|
||||
case LogLevel.Assert:
|
||||
loglevel = iOSLogLevel.Assert;
|
||||
loglevel = MSACLogLevel.Assert;
|
||||
break;
|
||||
case LogLevel.None:
|
||||
loglevel = iOSLogLevel.None;
|
||||
loglevel = MSACLogLevel.None;
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(value), value, null);
|
||||
}
|
||||
iOSAppCenter.SetLogLevel(loglevel);
|
||||
MSACAppCenter.SetLogLevel(loglevel);
|
||||
}
|
||||
}
|
||||
|
||||
static bool PlatformIsNetworkRequestsAllowed
|
||||
{
|
||||
get => iOSAppCenter.IsNetworkRequestsAllowed();
|
||||
set => iOSAppCenter.SetNetworkRequestsAllowed(value);
|
||||
get => MSACAppCenter.IsNetworkRequestsAllowed();
|
||||
set => MSACAppCenter.SetNetworkRequestsAllowed(value);
|
||||
}
|
||||
|
||||
static void PlatformSetUserId(string userId)
|
||||
{
|
||||
iOSAppCenter.SetUserId(userId);
|
||||
MSACAppCenter.SetUserId(userId);
|
||||
}
|
||||
|
||||
static void PlatformSetLogUrl(string logUrl)
|
||||
{
|
||||
iOSAppCenter.SetLogUrl(logUrl);
|
||||
MSACAppCenter.SetLogUrl(logUrl);
|
||||
}
|
||||
|
||||
static void PlatformSetCountryCode(string countryCode)
|
||||
{
|
||||
iOSAppCenter.SetCountryCode(countryCode);
|
||||
MSACAppCenter.SetCountryCode(countryCode);
|
||||
}
|
||||
|
||||
static bool PlatformConfigured
|
||||
{
|
||||
get
|
||||
{
|
||||
return iOSAppCenter.IsConfigured();
|
||||
return MSACAppCenter.IsConfigured();
|
||||
}
|
||||
}
|
||||
|
||||
static void PlatformConfigure(string appSecret)
|
||||
{
|
||||
SetWrapperSdk();
|
||||
iOSAppCenter.ConfigureWithAppSecret(appSecret);
|
||||
MSACAppCenter.ConfigureWithAppSecret(appSecret);
|
||||
}
|
||||
|
||||
static void PlatformStart(params Type[] services)
|
||||
|
@ -119,7 +120,7 @@ namespace Microsoft.AppCenter
|
|||
SetWrapperSdk();
|
||||
foreach (var service in GetServices(services))
|
||||
{
|
||||
iOSAppCenter.StartService(service);
|
||||
MSACAppCenter.StartService(service);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -136,23 +137,23 @@ namespace Microsoft.AppCenter
|
|||
AppCenterLog.Assert(AppCenterLog.LogTag, ex.Message);
|
||||
return;
|
||||
}
|
||||
iOSAppCenter.Start(parsedSecret, GetServices(services));
|
||||
MSACAppCenter.Start(parsedSecret, GetServices(services));
|
||||
}
|
||||
|
||||
static Task<bool> PlatformIsEnabledAsync()
|
||||
{
|
||||
return Task.FromResult(iOSAppCenter.IsEnabled());
|
||||
return Task.FromResult(MSACAppCenter.IsEnabled());
|
||||
}
|
||||
|
||||
static Task PlatformSetEnabledAsync(bool enabled)
|
||||
{
|
||||
iOSAppCenter.SetEnabled(enabled);
|
||||
MSACAppCenter.SetEnabled(enabled);
|
||||
return Task.FromResult(default(object));
|
||||
}
|
||||
|
||||
static Task<Guid?> PlatformGetInstallIdAsync()
|
||||
{
|
||||
Guid? installId = Guid.Parse(iOSAppCenter.InstallId().AsString());
|
||||
Guid? installId = Guid.Parse(MSACAppCenter.InstallId().AsString());
|
||||
return Task.FromResult(installId);
|
||||
}
|
||||
|
||||
|
@ -191,19 +192,19 @@ namespace Microsoft.AppCenter
|
|||
|
||||
static void SetWrapperSdk()
|
||||
{
|
||||
iOSWrapperSdk wrapperSdk = new iOSWrapperSdk(WrapperSdk.Version, WrapperSdk.Name, Constants.Version, null, null, null);
|
||||
iOSAppCenter.SetWrapperSdk(wrapperSdk);
|
||||
MSACWrapperSdk wrapperSdk = new MSACWrapperSdk(WrapperSdk.Version, WrapperSdk.Name, Constants.Version, null, null, null);
|
||||
MSACAppCenter.SetWrapperSdk(wrapperSdk);
|
||||
}
|
||||
|
||||
internal static void PlatformUnsetInstance()
|
||||
{
|
||||
iOSAppCenter.ResetSharedInstance();
|
||||
MSACAppCenter.ResetSharedInstance();
|
||||
}
|
||||
|
||||
static Task<bool> PlatformSetMaxStorageSizeAsync(long sizeInBytes)
|
||||
{
|
||||
TaskCompletionSource<bool> taskCompletionSource = new TaskCompletionSource<bool>();
|
||||
iOSAppCenter.SetMaxStorageSize(sizeInBytes, (result) => taskCompletionSource.SetResult(result));
|
||||
MSACAppCenter.SetMaxStorageSize(sizeInBytes, (result) => taskCompletionSource.SetResult(result));
|
||||
return taskCompletionSource.Task;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using Microsoft.AppCenter.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
public static partial class AppCenterLog
|
||||
{
|
||||
/// <summary>
|
||||
/// The log tag for this SDK. All logs emitted at the SDK level will contain this tag.
|
||||
/// </summary>
|
||||
public const string LogTag = nameof(AppCenter) + "Xamarin";
|
||||
|
||||
public static void Verbose(string tag, string message)
|
||||
{
|
||||
MSACLogMessageProvider msg_provider = () => { return message; };
|
||||
MSACWrapperLogger.MSACWrapperLog(msg_provider, tag, MSACLogLevel.Verbose);
|
||||
}
|
||||
|
||||
public static void Debug(string tag, string message)
|
||||
{
|
||||
MSACLogMessageProvider msg_provider = () => { return message; };
|
||||
MSACWrapperLogger.MSACWrapperLog(msg_provider, tag, MSACLogLevel.Debug);
|
||||
}
|
||||
|
||||
public static void Info(string tag, string message)
|
||||
{
|
||||
MSACLogMessageProvider msg_provider = () => { return message; };
|
||||
MSACWrapperLogger.MSACWrapperLog(msg_provider, tag, MSACLogLevel.Info);
|
||||
}
|
||||
|
||||
public static void Warn(string tag, string message)
|
||||
{
|
||||
MSACLogMessageProvider msg_provider = () => { return message; };
|
||||
MSACWrapperLogger.MSACWrapperLog(msg_provider, tag, MSACLogLevel.Warning);
|
||||
}
|
||||
|
||||
public static void Error(string tag, string message)
|
||||
{
|
||||
MSACLogMessageProvider msg_provider = () => { return message; };
|
||||
MSACWrapperLogger.MSACWrapperLog(msg_provider, tag, MSACLogLevel.Error);
|
||||
}
|
||||
|
||||
public static void Assert(string tag, string message)
|
||||
{
|
||||
MSACLogMessageProvider msg_provider = () => { return message; };
|
||||
MSACWrapperLogger.MSACWrapperLog(msg_provider, tag, MSACLogLevel.Assert);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -4,17 +4,17 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Foundation;
|
||||
using Microsoft.AppCenter.MacOS.Bindings;
|
||||
using Microsoft.AppCenter.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
internal class MacOSHttpClientAdapter : MSACHttpClientProtocol
|
||||
internal class AppleHttpClientAdapter : MSACHttpClientProtocol
|
||||
{
|
||||
private readonly IHttpNetworkAdapter _httpNetworkAdapter;
|
||||
|
||||
private MSACHttpClientDelegate _httpClientDelegate;
|
||||
|
||||
public MacOSHttpClientAdapter(IHttpNetworkAdapter httpNetworkAdapter)
|
||||
public AppleHttpClientAdapter(IHttpNetworkAdapter httpNetworkAdapter)
|
||||
{
|
||||
_httpNetworkAdapter = httpNetworkAdapter;
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using Microsoft.AppCenter.MacOS.Bindings;
|
||||
using Microsoft.AppCenter.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
|
@ -13,7 +13,7 @@ namespace Microsoft.AppCenter
|
|||
get => _httpNetworkAdapter;
|
||||
set
|
||||
{
|
||||
MSACDependencyConfiguration.HttpClient = new MacOSHttpClientAdapter(value);
|
||||
MSACDependencyConfiguration.HttpClient = new AppleHttpClientAdapter(value);
|
||||
_httpNetworkAdapter = value;
|
||||
}
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using Microsoft.AppCenter.iOS.Bindings;
|
||||
using Microsoft.AppCenter.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
|
||||
<HasSharedItems>true</HasSharedItems>
|
||||
<SharedGUID>{C9DC2286-37E4-467A-9DFB-593444265B74}</SharedGUID>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" />
|
||||
<ItemGroup>
|
||||
<Compile Include="$(MSBuildThisFileDirectory)AppCenter.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)AppCenterLog.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)DependencyConfiguration.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)Device.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)AppleHttpClientAdapter.cs" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{C9DC2286-37E4-467A-9DFB-593444265B74}</ProjectGuid>
|
||||
</PropertyGroup>
|
||||
<Import Project="Microsoft.AppCenter.Shared.Apple.projitems" Label="Shared" />
|
||||
</Project>
|
|
@ -8,5 +8,6 @@ namespace Microsoft.AppCenter
|
|||
/// </summary>
|
||||
public interface IAppCenterService
|
||||
{
|
||||
/* This interface should remain empty */
|
||||
}
|
||||
}
|
|
@ -13,5 +13,7 @@
|
|||
<Compile Include="$(MSBuildThisFileDirectory)HttpResponse.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)IHttpNetworkAdapter.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)HttpException.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)AppCenterService.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)IAppCenterService.cs" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -1,88 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}</ProjectGuid>
|
||||
<ProjectTypeGuids>{8FFB629D-F513-41CE-95D2-7ECE97B6EEEC};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>Microsoft.AppCenter.iOS.Bindings</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter.iOS.Bindings</AssemblyName>
|
||||
<IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Debug</OutputPath>
|
||||
<DefineConstants>DEBUG;</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<CustomCommands>
|
||||
<CustomCommands>
|
||||
<Command>
|
||||
<type>BeforeBuild</type>
|
||||
<command>sh build.sh -t=Externals-Apple</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
<Command>
|
||||
<type>AfterClean</type>
|
||||
<command>rm -rf externals/apple</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
</CustomCommands>
|
||||
</CustomCommands>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release</OutputPath>
|
||||
<DefineConstants>
|
||||
</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<CustomCommands>
|
||||
<CustomCommands>
|
||||
<Command>
|
||||
<type>BeforeBuild</type>
|
||||
<command>sh build.sh -t=Externals-Apple</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
<Command>
|
||||
<type>AfterClean</type>
|
||||
<command>rm -rf externals/apple</command>
|
||||
<workingdir>${SolutionDir}</workingdir>
|
||||
</Command>
|
||||
</CustomCommands>
|
||||
</CustomCommands>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="Xamarin.iOS" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingCoreSource Include="StructsAndEnums.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\ios\AppCenter.a">
|
||||
<Kind>Static</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
<LinkerFlags>-lsqlite3</LinkerFlags>
|
||||
<Frameworks>CoreTelephony Security SystemConfiguration</Frameworks>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.ObjCBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,37 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using System.Reflection;
|
||||
using Foundation;
|
||||
|
||||
// This attribute allows you to mark your assemblies as “safe to link”.
|
||||
// When the attribute is present, the linker—if enabled—will process the assembly
|
||||
// even if you’re using the “Link SDK assemblies only” option, which is the default for device builds.
|
||||
|
||||
[assembly: LinkerSafe]
|
||||
|
||||
// Information about this assembly is defined by the following attributes.
|
||||
// Change them to the values specific to your project.
|
||||
|
||||
[assembly: AssemblyTitle("Microsoft.AppCenter.iOS.Bindings")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("Microsoft Corporation")]
|
||||
[assembly: AssemblyProduct("")]
|
||||
[assembly: AssemblyCopyright("Microsoft Corp. All rights reserved.")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("0.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("4.5.4.0")]
|
||||
[assembly: AssemblyInformationalVersion("4.5.4-SNAPSHOT")]
|
|
@ -1,53 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
using iOSMessageProvider = Microsoft.AppCenter.iOS.Bindings.MSACLogMessageProvider;
|
||||
using iOSLogger = Microsoft.AppCenter.iOS.Bindings.MSACWrapperLogger;
|
||||
using iOSLogLevel = Microsoft.AppCenter.iOS.Bindings.MSACLogLevel;
|
||||
|
||||
public static partial class AppCenterLog
|
||||
{
|
||||
/// <summary>
|
||||
/// The log tag for this SDK. All logs emitted at the SDK level will contain this tag.
|
||||
/// </summary>
|
||||
public const string LogTag = nameof(AppCenter) + "Xamarin";
|
||||
|
||||
public static void Verbose(string tag, string message)
|
||||
{
|
||||
iOSMessageProvider msg_provider = () => { return message; };
|
||||
iOSLogger.MSACWrapperLog(msg_provider, tag, iOSLogLevel.Verbose);
|
||||
}
|
||||
|
||||
public static void Debug(string tag, string message)
|
||||
{
|
||||
iOSMessageProvider msg_provider = () => { return message; };
|
||||
iOSLogger.MSACWrapperLog(msg_provider, tag, iOSLogLevel.Debug);
|
||||
}
|
||||
|
||||
public static void Info(string tag, string message)
|
||||
{
|
||||
iOSMessageProvider msg_provider = () => { return message; };
|
||||
iOSLogger.MSACWrapperLog(msg_provider, tag, iOSLogLevel.Info);
|
||||
}
|
||||
|
||||
public static void Warn(string tag, string message)
|
||||
{
|
||||
iOSMessageProvider msg_provider = () => { return message; };
|
||||
iOSLogger.MSACWrapperLog(msg_provider, tag, iOSLogLevel.Warning);
|
||||
}
|
||||
|
||||
public static void Error(string tag, string message)
|
||||
{
|
||||
iOSMessageProvider msg_provider = () => { return message; };
|
||||
iOSLogger.MSACWrapperLog(msg_provider, tag, iOSLogLevel.Error);
|
||||
}
|
||||
|
||||
public static void Assert(string tag, string message)
|
||||
{
|
||||
iOSMessageProvider msg_provider = () => { return message; };
|
||||
iOSLogger.MSACWrapperLog(msg_provider, tag, iOSLogLevel.Assert);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
public abstract class AppCenterService : IAppCenterService
|
||||
{
|
||||
}
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using Microsoft.AppCenter.iOS.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
static partial class DependencyConfiguration
|
||||
{
|
||||
private static IHttpNetworkAdapter _httpNetworkAdapter;
|
||||
private static IHttpNetworkAdapter PlatformHttpNetworkAdapter
|
||||
{
|
||||
get => _httpNetworkAdapter;
|
||||
set
|
||||
{
|
||||
MSACDependencyConfiguration.HttpClient = new IosHttpClientAdapter(value);
|
||||
_httpNetworkAdapter = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
public interface IAppCenterService
|
||||
{
|
||||
/* This interface should remain empty */
|
||||
}
|
||||
}
|
|
@ -1,80 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Foundation;
|
||||
using Microsoft.AppCenter.iOS.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter
|
||||
{
|
||||
internal class IosHttpClientAdapter : MSACHttpClientProtocol
|
||||
{
|
||||
private readonly IHttpNetworkAdapter _httpNetworkAdapter;
|
||||
|
||||
private MSACHttpClientDelegate _httpClientDelegate;
|
||||
|
||||
public IosHttpClientAdapter(IHttpNetworkAdapter httpNetworkAdapter)
|
||||
{
|
||||
_httpNetworkAdapter = httpNetworkAdapter;
|
||||
}
|
||||
|
||||
public override void SendAsync(NSUrl url, NSString method, NSDictionary<NSString, NSString> headers, NSData data, MSACHttpRequestCompletionHandler completionHandler)
|
||||
{
|
||||
_httpClientDelegate?.WillSendHTTPRequestToURL(url, headers);
|
||||
var managedHeaders = new Dictionary<string, string>();
|
||||
if (headers == null)
|
||||
{
|
||||
managedHeaders = new Dictionary<string, string>();
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach (KeyValuePair<NSObject, NSObject> header in headers)
|
||||
{
|
||||
managedHeaders[header.Key.ToString()] = header.Value.ToString();
|
||||
}
|
||||
}
|
||||
_httpNetworkAdapter.SendAsync(url.ToString(), method, managedHeaders, data?.ToString(), CancellationToken.None).ContinueWith(t =>
|
||||
{
|
||||
var innerException = t.Exception?.InnerException;
|
||||
if (innerException is HttpException)
|
||||
{
|
||||
var response = (innerException as HttpException).HttpResponse;
|
||||
completionHandler(NSData.FromString(response.Content), new NSHttpUrlResponse(url, response.StatusCode, "1.1", new NSDictionary()), null);
|
||||
}
|
||||
else if (innerException != null)
|
||||
{
|
||||
var userInfo = NSDictionary.FromObjectAndKey(new NSString("stackTrace"), new NSString(innerException.ToString()));
|
||||
completionHandler(null, null, new NSError(new NSString(".NET SDK"), 1, userInfo));
|
||||
}
|
||||
else
|
||||
{
|
||||
var response = t.Result;
|
||||
completionHandler(NSData.FromString(response.Content), new NSHttpUrlResponse(url, response.StatusCode, "1.1", new NSDictionary()), null);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public override void SendAsync(NSUrl url, NSString method, NSDictionary<NSString, NSString> headers, NSData data, NSArray retryIntervals, bool compressionEnabled, MSACHttpRequestCompletionHandler completionHandler)
|
||||
{
|
||||
SendAsync(url, method, headers, data, completionHandler);
|
||||
}
|
||||
|
||||
public override void Pause()
|
||||
{
|
||||
}
|
||||
|
||||
public override void Resume()
|
||||
{
|
||||
}
|
||||
|
||||
public override void SetEnabled(bool enabled)
|
||||
{
|
||||
}
|
||||
|
||||
public override void SetDelegate(MSACHttpClientDelegate httpClientDelegate)
|
||||
{
|
||||
_httpClientDelegate = httpClientDelegate;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -4,7 +4,7 @@
|
|||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}</ProjectGuid>
|
||||
<ProjectTypeGuids>{FEACFBD2-3405-455C-9665-78FE426C6842};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<ProjectTypeGuids>{8FFB629D-F513-41CE-95D2-7ECE97B6EEEC};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>Microsoft.AppCenter</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter</AssemblyName>
|
||||
|
@ -12,6 +12,7 @@
|
|||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
|
@ -25,6 +26,7 @@
|
|||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
<MtouchTlsProvider>Default</MtouchTlsProvider>
|
||||
<DocumentationFile>bin\Debug\Microsoft.AppCenter.xml</DocumentationFile>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
|
@ -37,36 +39,36 @@
|
|||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
<MtouchTlsProvider>Default</MtouchTlsProvider>
|
||||
<DocumentationFile>bin\Release\Microsoft.AppCenter.xml</DocumentationFile>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="Xamarin.iOS" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="Resources\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="IAppCenterService.cs" />
|
||||
<Compile Include="AppCenter.cs" />
|
||||
<Compile Include="AppCenterService.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="AppCenterLog.cs" />
|
||||
<Compile Include="Device.cs" />
|
||||
<Compile Include="DependencyConfiguration.cs" />
|
||||
<Compile Include="IosHttpClientAdapter.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Microsoft.AppCenter.iOS.Bindings\Microsoft.AppCenter.iOS.Bindings.csproj">
|
||||
<Project>{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}</Project>
|
||||
<Name>Microsoft.AppCenter.iOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Info.plist" />
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Shared.Xamarin\Microsoft.AppCenter.Shared.Xamarin.projitems" Label="Shared" Condition="Exists('..\Microsoft.AppCenter.Shared.Xamarin\Microsoft.AppCenter.Shared.Xamarin.projitems')" />
|
||||
<Import Project="..\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems" Label="Shared" Condition="Exists('..\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="..\Microsoft.AppCenter.AppleUnified\ApiDefinition.cs">
|
||||
<Link>ApiDefinition.cs</Link>
|
||||
</ObjcBindingApiDefinition>
|
||||
<ObjcBindingCoreSource Include="..\Microsoft.AppCenter.AppleUnified\StructsAndEnums.cs">
|
||||
<Link>StructsAndEnums.cs</Link>
|
||||
</ObjcBindingCoreSource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\ios\AppCenter.a">
|
||||
<Kind>Static</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
<LinkerFlags>-lsqlite3</LinkerFlags>
|
||||
<Frameworks>CoreTelephony Security SystemConfiguration</Frameworks>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Shared.Apple\Microsoft.AppCenter.Shared.Apple.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Shared.Xamarin\Microsoft.AppCenter.Shared.Xamarin.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.ObjCBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project Sdk="MSBuild.Sdk.Extras/3.0.44">
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="..\Microsoft.AppCenter.Shared.Xamarin\Microsoft.AppCenter.Shared.Xamarin.projitems" Label="Shared" Condition="Exists('..\Microsoft.AppCenter.Shared.Xamarin\Microsoft.AppCenter.Shared.Xamarin.projitems')" />
|
||||
<Import Project="..\Microsoft.AppCenter.Shared\Microsoft.AppCenter.Shared.projitems" Label="Shared" />
|
||||
<PropertyGroup>
|
||||
|
|
|
@ -3,15 +3,14 @@
|
|||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Threading.Tasks;
|
||||
using Foundation;
|
||||
using Microsoft.AppCenter.Analytics.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Analytics
|
||||
{
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using iOSAnalytics = iOS.Bindings.MSACAnalytics;
|
||||
|
||||
/// <summary>
|
||||
/// Analytics feature.
|
||||
/// </summary>
|
||||
|
@ -25,10 +24,10 @@ namespace Microsoft.AppCenter.Analytics
|
|||
/// Internal SDK property not intended for public use.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The iOS SDK Analytics bindings type.
|
||||
/// The Apple SDK Analytics bindings type.
|
||||
/// </value>
|
||||
[Preserve]
|
||||
public static Type BindingType => typeof(iOSAnalytics);
|
||||
public static Type BindingType => typeof(MSACAnalytics);
|
||||
|
||||
/// <summary>
|
||||
/// Check whether the Analytics service is enabled or not.
|
||||
|
@ -36,7 +35,7 @@ namespace Microsoft.AppCenter.Analytics
|
|||
/// <returns>A task with result being true if enabled, false if disabled.</returns>
|
||||
public static Task<bool> IsEnabledAsync()
|
||||
{
|
||||
return Task.FromResult(iOSAnalytics.IsEnabled());
|
||||
return Task.FromResult(MSACAnalytics.IsEnabled());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -45,7 +44,7 @@ namespace Microsoft.AppCenter.Analytics
|
|||
/// <returns>A task to monitor the operation.</returns>
|
||||
public static Task SetEnabledAsync(bool enabled)
|
||||
{
|
||||
iOSAnalytics.SetEnabled(enabled);
|
||||
MSACAnalytics.SetEnabled(enabled);
|
||||
return Task.FromResult(default(object));
|
||||
}
|
||||
|
||||
|
@ -54,7 +53,7 @@ namespace Microsoft.AppCenter.Analytics
|
|||
/// </summary>
|
||||
internal static void Pause()
|
||||
{
|
||||
iOSAnalytics.Pause();
|
||||
MSACAnalytics.Pause();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -62,7 +61,7 @@ namespace Microsoft.AppCenter.Analytics
|
|||
/// </summary>
|
||||
internal static void Resume()
|
||||
{
|
||||
iOSAnalytics.Resume();
|
||||
MSACAnalytics.Resume();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -71,8 +70,8 @@ namespace Microsoft.AppCenter.Analytics
|
|||
/// </summary>
|
||||
//public static bool AutoPageTrackingEnabled
|
||||
//{
|
||||
// get { return iOSAnalytics.IsAutoPageTrackingEnabled(); }
|
||||
// set { iOSAnalytics.SetAutoPageTrackingEnabled(value); }
|
||||
// get { return MSACAnalytics.IsAutoPageTrackingEnabled(); }
|
||||
// set { MSACAnalytics.SetAutoPageTrackingEnabled(value); }
|
||||
//}
|
||||
|
||||
/// <summary>
|
||||
|
@ -84,10 +83,10 @@ namespace Microsoft.AppCenter.Analytics
|
|||
{
|
||||
if (properties != null)
|
||||
{
|
||||
iOSAnalytics.TrackEvent(name, StringDictToNSDict(properties));
|
||||
MSACAnalytics.TrackEvent(name, StringDictToNSDict(properties));
|
||||
return;
|
||||
}
|
||||
iOSAnalytics.TrackEvent(name);
|
||||
MSACAnalytics.TrackEvent(name);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -95,7 +94,7 @@ namespace Microsoft.AppCenter.Analytics
|
|||
/// </summary>
|
||||
public static void EnableManualSessionTracker()
|
||||
{
|
||||
iOSAnalytics.EnableManualSessionTracker();
|
||||
MSACAnalytics.EnableManualSessionTracker();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -103,7 +102,7 @@ namespace Microsoft.AppCenter.Analytics
|
|||
/// </summary>
|
||||
public static void StartSession()
|
||||
{
|
||||
iOSAnalytics.StartSession();
|
||||
MSACAnalytics.StartSession();
|
||||
}
|
||||
|
||||
///// <summary>
|
||||
|
@ -115,15 +114,15 @@ namespace Microsoft.AppCenter.Analytics
|
|||
//{
|
||||
// if (properties != null)
|
||||
// {
|
||||
// iOSAnalytics.TrackPage(name, StringDictToNSDict(properties));
|
||||
// MSACAnalytics.TrackPage(name, StringDictToNSDict(properties));
|
||||
// return;
|
||||
// }
|
||||
// iOSAnalytics.TrackPage(name);
|
||||
// MSACAnalytics.TrackPage(name);
|
||||
//}
|
||||
|
||||
internal static void UnsetInstance()
|
||||
{
|
||||
iOSAnalytics.ResetSharedInstance();
|
||||
MSACAnalytics.ResetSharedInstance();
|
||||
}
|
||||
|
||||
private static NSDictionary StringDictToNSDict(IDictionary<string, string> dict)
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
using Foundation;
|
||||
|
||||
namespace Microsoft.AppCenter.Analytics.iOS.Bindings
|
||||
namespace Microsoft.AppCenter.Analytics.Apple.Bindings
|
||||
{
|
||||
// @interface MSACAnalytics : MSACService
|
||||
[BaseType(typeof(NSObject))]
|
|
@ -0,0 +1,56 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>net6.0-ios;net6.0-macos</TargetFrameworks>
|
||||
<IsBindingProject>true</IsBindingProject>
|
||||
<Optimize>true</Optimize>
|
||||
<Copyright>Microsoft Corp. All rights reserved.</Copyright>
|
||||
<Product>Microsoft.AppCenter.Analytics</Product>
|
||||
<Company>Microsoft Corporation</Company>
|
||||
<Version>4.5.4-SNAPSHOT</Version>
|
||||
<AssemblyVersion>0.0.0.0</AssemblyVersion>
|
||||
<FileVersion>4.5.4.0</FileVersion>
|
||||
<RootNamespace>Microsoft.AppCenter.Analytics</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter.Analytics</AssemblyName>
|
||||
<AssemblyTitle>Microsoft.AppCenter.Analytics</AssemblyTitle>
|
||||
<DocumentationFile>bin\$(Configuration)\$(TargetFramework)\Microsoft.AppCenter.Analytics.xml</DocumentationFile>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<NoBindingEmbedding>false</NoBindingEmbedding>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="$(TargetFramework.EndsWith('-ios'))">
|
||||
<SupportedOSPlatformVersion>10.0</SupportedOSPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="$(TargetFramework.EndsWith('-macos'))">
|
||||
<SupportedOSPlatformVersion>10.14</SupportedOSPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<MtouchLink>SdkOnly</MtouchLink>
|
||||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<MtouchLink>SdkOnly</MtouchLink>
|
||||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
<ObjcBindingCoreSource Include="StructsAndEnums.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(TargetFramework.EndsWith('-ios'))">
|
||||
<NativeReference Include="..\..\..\externals\apple\ios\AppCenterAnalytics.a">
|
||||
<Kind>Static</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(TargetFramework.EndsWith('-macos'))">
|
||||
<NativeReference Include="..\..\..\externals\apple\macOS\AppCenterAnalytics.framework">
|
||||
<Kind>Framework</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.AppleUnified\Microsoft.AppCenter.AppleUnified.csproj" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -1,8 +1,6 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using System;
|
||||
|
||||
namespace Microsoft.AppCenter.Analytics.iOS.Bindings
|
||||
namespace Microsoft.AppCenter.Analytics.Apple.Bindings
|
||||
{
|
||||
}
|
|
@ -1,108 +0,0 @@
|
|||
using Foundation;
|
||||
|
||||
namespace Microsoft.AppCenter.Analytics.MacOS.Bindings
|
||||
{
|
||||
// @interface MSACAnalytics : MSACService
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACAnalytics
|
||||
{
|
||||
// +(void)setEnabled:(BOOL)isEnabled;
|
||||
[Static]
|
||||
[Export("setEnabled:")]
|
||||
void SetEnabled(bool isEnabled);
|
||||
|
||||
// +(BOOL)isEnabled;
|
||||
[Static]
|
||||
[Export("isEnabled")]
|
||||
bool IsEnabled();
|
||||
|
||||
// +(void)pause;
|
||||
[Static]
|
||||
[Export("pause")]
|
||||
void Pause();
|
||||
|
||||
// +(void)resume;
|
||||
[Static]
|
||||
[Export("resume")]
|
||||
void Resume();
|
||||
|
||||
// +(void)trackEvent:(NSString *)eventName;
|
||||
[Static]
|
||||
[Export("trackEvent:")]
|
||||
void TrackEvent([NullAllowed] string eventName);
|
||||
|
||||
// +(void)trackEvent:(NSString *)eventName withProperties:(NSDictionary *)properties;
|
||||
[Static]
|
||||
[Export("trackEvent:withProperties:")]
|
||||
void TrackEvent([NullAllowed] string eventName, [NullAllowed] NSDictionary properties);
|
||||
|
||||
// +(void)setDelegate:(id<MSACAnalyticsDelegate> _Nullable)delegate;
|
||||
[Static]
|
||||
[Export("setDelegate:")]
|
||||
void SetDelegate([NullAllowed] MSACAnalyticsDelegate analyticsDelegate);
|
||||
|
||||
// + (void)resetSharedInstance
|
||||
[Static]
|
||||
[Export("resetSharedInstance")]
|
||||
void ResetSharedInstance();
|
||||
|
||||
// + (void)enableManualSessionTracker
|
||||
[Static]
|
||||
[Export("enableManualSessionTracker")]
|
||||
void EnableManualSessionTracker();
|
||||
|
||||
// + (void)startSession
|
||||
[Static]
|
||||
[Export("startSession")]
|
||||
void StartSession();
|
||||
}
|
||||
|
||||
// @protocol MSACAnalyticsDelegate <NSObject>
|
||||
[Protocol, Model]
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACAnalyticsDelegate
|
||||
{
|
||||
//@optional - (void)analytics:(MSACAnalytics*)analytics willSendEventLog:(MSACEventLog*)eventLog;
|
||||
[Export("analytics:willSendEventLog:")]
|
||||
void WillSendEventLog(MSACAnalytics analytics, MSACEventLog eventLog);
|
||||
|
||||
//@optional - (void)analytics:(MSACAnalytics*)analytics didSucceedSendingEventLog:(MSACEventLog*)eventLog;
|
||||
[Export("analytics:didSucceedSendingEventLog:")]
|
||||
void DidSucceedSendingEventLog(MSACAnalytics analytics, MSACEventLog eventLog);
|
||||
|
||||
//@optional - (void)analytics:(MSACAnalytics*)analytics didFailSendingEventLog:(MSACEventLog*)eventLog withError:(NSError*)error;
|
||||
[Export("analytics:didFailSendingEventLog:withError:")]
|
||||
void DidFailSendingEventLog(MSACAnalytics analytics, MSACEventLog eventLog, NSError error);
|
||||
}
|
||||
|
||||
// @interface MSACLogWithProperties : MSACAbstractLog
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACLogWithProperties
|
||||
{
|
||||
//@property(nonatomic) NSDictionary<NSString*, NSString*>* properties;
|
||||
[Export("properties")]
|
||||
NSDictionary<NSString, NSString> Properties { get; set; }
|
||||
}
|
||||
|
||||
//@interface MSACEventLog : MSACLogWithProperties
|
||||
[BaseType(typeof(MSACLogWithProperties))]
|
||||
interface MSACEventLog : MSACLogWithProperties
|
||||
{
|
||||
//@property(nonatomic) NSString *eventId;
|
||||
[Export("eventId")]
|
||||
string EventId { get; set; }
|
||||
|
||||
//@property(nonatomic) NSString *name;
|
||||
[Export("name")]
|
||||
string Name { get; set; }
|
||||
}
|
||||
|
||||
//@interface MSACPageLog : MSACLogWithProperties
|
||||
[BaseType(typeof(MSACLogWithProperties))]
|
||||
interface MSACPageLog : MSACLogWithProperties
|
||||
{
|
||||
//@property(nonatomic) NSString *name;
|
||||
[Export("name")]
|
||||
string Name { get; set; }
|
||||
}
|
||||
}
|
|
@ -1,60 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{D00918DD-BAC4-4AD4-A866-056CBE780AB2}</ProjectGuid>
|
||||
<ProjectTypeGuids>{810C163F-4746-4721-8B8E-88A3673A62EA};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>Microsoft.AppCenter.Analytics.MacOS.Bindings</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter.Analytics.MacOS.Bindings</AssemblyName>
|
||||
<MacResourcePrefix>Resources</MacResourcePrefix>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Debug</OutputPath>
|
||||
<DefineConstants>DEBUG;</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release</OutputPath>
|
||||
<DefineConstants />
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="Xamarin.Mac" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingCoreSource Include="StructsAndEnums.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\macOS\AppCenterAnalytics.framework">
|
||||
<Kind>Framework</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
<Frameworks>IOKit</Frameworks>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.ObjcBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,34 +0,0 @@
|
|||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
|
||||
using Foundation;
|
||||
|
||||
// This attribute allows you to mark your assemblies as “safe to link”.
|
||||
// When the attribute is present, the linker—if enabled—will process the assembly
|
||||
// even if you’re using the “Link SDK assemblies only” option, which is the default for device builds.
|
||||
|
||||
[assembly: AssemblyMetadata("IsTrimmable", "False")]
|
||||
|
||||
// Information about this assembly is defined by the following attributes.
|
||||
// Change them to the values specific to your project.
|
||||
|
||||
[assembly: AssemblyTitle("Microsoft.AppCenter.Analytics.MacOS.Bindings")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("")]
|
||||
[assembly: AssemblyCopyright("${AuthorCopyright}")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
|
||||
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
|
||||
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
|
||||
|
||||
[assembly: AssemblyVersion("1.0.*")]
|
||||
|
||||
// The following attributes are used to specify the signing key for the assembly,
|
||||
// if desired. See the Mono documentation for more information about signing.
|
||||
|
||||
//[assembly: AssemblyDelaySign(false)]
|
||||
//[assembly: AssemblyKeyFile("")]
|
|
@ -1,5 +0,0 @@
|
|||
using System;
|
||||
|
||||
namespace Microsoft.AppCenter.Analytics.MacOS.Bindings
|
||||
{
|
||||
}
|
|
@ -1,106 +0,0 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.InteropServices;
|
||||
using Foundation;
|
||||
|
||||
namespace Microsoft.AppCenter.Analytics
|
||||
{
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using MacOSAnalytics = MacOS.Bindings.MSACAnalytics;
|
||||
|
||||
/// <summary>
|
||||
/// Analytics feature.
|
||||
/// </summary>
|
||||
public class Analytics : AppCenterService
|
||||
{
|
||||
internal Analytics()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Internal SDK property not intended for public use.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The MacOS SDK Analytics bindings type.
|
||||
/// </value>
|
||||
[Preserve]
|
||||
public static Type BindingType => typeof(MacOSAnalytics);
|
||||
|
||||
/// <summary>
|
||||
/// Check whether the Analytics service is enabled or not.
|
||||
/// </summary>
|
||||
/// <returns>A task with result being true if enabled, false if disabled.</returns>
|
||||
public static Task<bool> IsEnabledAsync()
|
||||
{
|
||||
return Task.FromResult(MacOSAnalytics.IsEnabled());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Enable or disable the Analytics service.
|
||||
/// </summary>
|
||||
/// <returns>A task to monitor the operation.</returns>
|
||||
public static Task SetEnabledAsync(bool enabled)
|
||||
{
|
||||
MacOSAnalytics.SetEnabled(enabled);
|
||||
return Task.FromResult(default(object));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Pause the Analytics service.
|
||||
/// </summary>
|
||||
internal static void Pause()
|
||||
{
|
||||
MacOSAnalytics.Pause();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Resume the Analytics service.
|
||||
/// </summary>
|
||||
internal static void Resume()
|
||||
{
|
||||
MacOSAnalytics.Resume();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Track a custom event.
|
||||
/// </summary>
|
||||
/// <param name="name">An event name.</param>
|
||||
/// <param name="properties">Optional properties.</param>
|
||||
public static void TrackEvent(string name, [Optional] IDictionary<string, string> properties)
|
||||
{
|
||||
if (properties != null)
|
||||
{
|
||||
MacOSAnalytics.TrackEvent(name, StringDictToNSDict(properties));
|
||||
return;
|
||||
}
|
||||
MacOSAnalytics.TrackEvent(name);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Enable manual session tracker.
|
||||
/// </summary>
|
||||
public static void EnableManualSessionTracker()
|
||||
{
|
||||
MacOSAnalytics.EnableManualSessionTracker();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Start a new session if manual session tracker is enabled, otherwise do nothing.
|
||||
/// </summary>
|
||||
public static void StartSession()
|
||||
{
|
||||
MacOSAnalytics.StartSession();
|
||||
}
|
||||
|
||||
internal static void UnsetInstance()
|
||||
{
|
||||
MacOSAnalytics.ResetSharedInstance();
|
||||
}
|
||||
|
||||
private static NSDictionary StringDictToNSDict(IDictionary<string, string> dict)
|
||||
{
|
||||
return NSDictionary.FromObjectsAndKeys(dict.Values.ToArray(), dict.Keys.ToArray());
|
||||
}
|
||||
}
|
||||
}
|
|
@ -14,6 +14,7 @@
|
|||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
|
@ -30,9 +31,10 @@
|
|||
<IncludeMonoRuntime>false</IncludeMonoRuntime>
|
||||
<UseSGen>false</UseSGen>
|
||||
<HttpClientHandler />
|
||||
<LinkMode />
|
||||
<LinkMode>None</LinkMode>
|
||||
<XamMacArch>x86_64</XamMacArch>
|
||||
<AOTMode>None</AOTMode>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
|
@ -47,9 +49,10 @@
|
|||
<IncludeMonoRuntime>false</IncludeMonoRuntime>
|
||||
<UseSGen>false</UseSGen>
|
||||
<HttpClientHandler />
|
||||
<LinkMode />
|
||||
<LinkMode>None</LinkMode>
|
||||
<XamMacArch>x86_64</XamMacArch>
|
||||
<AOTMode>None</AOTMode>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
|
@ -57,22 +60,28 @@
|
|||
<Reference Include="Xamarin.Mac" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Analytics.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Analytics.AppleUnified\Analytics.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="..\Microsoft.AppCenter.Analytics.AppleUnified\ApiDefinition.cs">
|
||||
<Link>ApiDefinition.cs</Link>
|
||||
</ObjcBindingApiDefinition>
|
||||
<ObjcBindingCoreSource Include="..\Microsoft.AppCenter.Analytics.AppleUnified\StructsAndEnums.cs">
|
||||
<Link>StructsAndEnums.cs</Link>
|
||||
</ObjcBindingCoreSource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\macOS\AppCenterAnalytics.framework">
|
||||
<Kind>Framework</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.MacOS\Microsoft.AppCenter.MacOS.csproj">
|
||||
<Project>{727A9E5A-566A-4DC5-B62B-8F7CA17661B8}</Project>
|
||||
<Name>Microsoft.AppCenter.MacOS</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.MacOS.Bindings\Microsoft.AppCenter.MacOS.Bindings.csproj">
|
||||
<Project>{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}</Project>
|
||||
<Name>Microsoft.AppCenter.MacOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Microsoft.AppCenter.Analytics.MacOS.Bindings\Microsoft.AppCenter.Analytics.MacOS.Bindings.csproj">
|
||||
<Project>{D00918DD-BAC4-4AD4-A866-056CBE780AB2}</Project>
|
||||
<Name>Microsoft.AppCenter.Analytics.MacOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.CSharp.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.ObjcBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,6 +0,0 @@
|
|||
<Project>
|
||||
<Target Name="FixAppCenterAnalyticsSymlink" AfterTargets="_CollectFrameworks">
|
||||
<Message Text="symlinking AppCenterAnalytics" />
|
||||
<Exec Command="cd $(AppBundleDir)\Contents\Frameworks\AppCenterAnalytics.framework\ ; rm AppCenterAnalytics ; ln -s Versions\A\AppCenterAnalytics AppCenterAnalytics" />
|
||||
</Target>
|
||||
</Project>
|
|
@ -1,58 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}</ProjectGuid>
|
||||
<ProjectTypeGuids>{8FFB629D-F513-41CE-95D2-7ECE97B6EEEC};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>Microsoft.AppCenter.Analytics.iOS.Bindings</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter.Analytics.iOS.Bindings</AssemblyName>
|
||||
<IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Debug</OutputPath>
|
||||
<DefineConstants>DEBUG;</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release</OutputPath>
|
||||
<DefineConstants>
|
||||
</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="Xamarin.iOS" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingCoreSource Include="Structs.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\ios\AppCenterAnalytics.a">
|
||||
<Kind>Static</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.ObjCBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,37 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using System.Reflection;
|
||||
using Foundation;
|
||||
|
||||
// This attribute allows you to mark your assemblies as “safe to link”.
|
||||
// When the attribute is present, the linker—if enabled—will process the assembly
|
||||
// even if you’re using the “Link SDK assemblies only” option, which is the default for device builds.
|
||||
|
||||
[assembly: LinkerSafe]
|
||||
|
||||
// Information about this assembly is defined by the following attributes.
|
||||
// Change them to the values specific to your project.
|
||||
|
||||
[assembly: AssemblyTitle("Microsoft.AppCenter.Analytics.iOS.Bindings")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("Microsoft Corporation")]
|
||||
[assembly: AssemblyProduct("")]
|
||||
[assembly: AssemblyCopyright("Microsoft Corp. All rights reserved.")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("0.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("4.5.4.0")]
|
||||
[assembly: AssemblyInformationalVersion("4.5.4-SNAPSHOT")]
|
|
@ -12,6 +12,7 @@
|
|||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
|
@ -25,6 +26,7 @@
|
|||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
<MtouchTlsProvider>Default</MtouchTlsProvider>
|
||||
<DocumentationFile>bin\Debug\Microsoft.AppCenter.Analytics.xml</DocumentationFile>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
|
@ -37,25 +39,32 @@
|
|||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
<MtouchTlsProvider>Default</MtouchTlsProvider>
|
||||
<DocumentationFile>bin\Release\Microsoft.AppCenter.Analytics.xml</DocumentationFile>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="Xamarin.iOS" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="Resources\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Analytics.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Analytics.AppleUnified\Analytics.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Microsoft.AppCenter.Analytics.iOS.Bindings\Microsoft.AppCenter.Analytics.iOS.Bindings.csproj">
|
||||
<Project>{45EA6818-8759-4E48-BD7A-E240E4D4B0F7}</Project>
|
||||
<Name>Microsoft.AppCenter.Analytics.iOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
<ObjcBindingApiDefinition Include="..\Microsoft.AppCenter.Analytics.AppleUnified\ApiDefinition.cs">
|
||||
<Link>ApiDefinition.cs</Link>
|
||||
</ObjcBindingApiDefinition>
|
||||
<ObjcBindingCoreSource Include="..\Microsoft.AppCenter.Analytics.AppleUnified\StructsAndEnums.cs">
|
||||
<Link>StructsAndEnums.cs</Link>
|
||||
</ObjcBindingCoreSource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\ios\AppCenterAnalytics.a">
|
||||
<Kind>Static</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.iOS\Microsoft.AppCenter.iOS.csproj">
|
||||
<Project>{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}</Project>
|
||||
<Name>Microsoft.AppCenter.iOS</Name>
|
||||
|
@ -64,5 +73,5 @@
|
|||
<ItemGroup>
|
||||
<None Include="Info.plist" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.ObjCBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project Sdk="MSBuild.Sdk.Extras/3.0.44">
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netstandard1.0</TargetFramework>
|
||||
<Optimize>true</Optimize>
|
||||
|
@ -22,4 +22,4 @@
|
|||
<Folder Include="Properties\" />
|
||||
</ItemGroup>
|
||||
<Target Name="GetPackagingOutputs" />
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -81,7 +81,7 @@
|
|||
<Name>Microsoft.AppCenter.Android.Bindings</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared.Targets\Microsoft.AppCenter.Crashes.Shared.Targets.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared.Xamarin\Microsoft.AppCenter.Crashes.Shared.Xamarin.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -1,9 +1,12 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using System;
|
||||
using Foundation;
|
||||
using ObjCRuntime;
|
||||
using CoreFoundation;
|
||||
using Microsoft.AppCenter.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes.MacOS.Bindings
|
||||
namespace Microsoft.AppCenter.Crashes.Apple.Bindings
|
||||
{
|
||||
// @interface MSACErrorReport : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
|
@ -39,7 +42,7 @@ namespace Microsoft.AppCenter.Crashes.MacOS.Bindings
|
|||
|
||||
// @property (readonly, nonatomic) MSACDevice * device;
|
||||
[Export("device")]
|
||||
Microsoft.AppCenter.MacOS.Bindings.MSACDevice Device { get; }
|
||||
MSACDevice Device { get; }
|
||||
|
||||
// @property (readonly, assign, nonatomic) NSUInteger appProcessIdentifier;
|
||||
[Export("appProcessIdentifier")]
|
||||
|
@ -291,4 +294,4 @@ namespace Microsoft.AppCenter.Crashes.MacOS.Bindings
|
|||
[Export("setCrashHandlerSetupDelegate:")]
|
||||
void SetCrashHandlerSetupDelegate(MSACCrashHandlerSetupDelegate del);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -8,71 +8,69 @@ using System.Linq;
|
|||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using Foundation;
|
||||
using Microsoft.AppCenter.Crashes.iOS.Bindings;
|
||||
using Microsoft.AppCenter.Crashes.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes
|
||||
{
|
||||
using iOSCrashes = iOS.Bindings.MSACCrashes;
|
||||
|
||||
public partial class Crashes
|
||||
{
|
||||
/// <summary>
|
||||
/// Internal SDK property not intended for public use.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The iOS SDK Crashes bindings type.
|
||||
/// The Apple SDK Crashes bindings type.
|
||||
/// </value>
|
||||
[Preserve]
|
||||
public static Type BindingType => typeof(iOSCrashes);
|
||||
public static Type BindingType => typeof(MSACCrashes);
|
||||
|
||||
static Task<bool> PlatformIsEnabledAsync()
|
||||
{
|
||||
return Task.FromResult(iOSCrashes.IsEnabled());
|
||||
return Task.FromResult(MSACCrashes.IsEnabled());
|
||||
}
|
||||
|
||||
static Task PlatformSetEnabledAsync(bool enabled)
|
||||
{
|
||||
iOSCrashes.SetEnabled(enabled);
|
||||
MSACCrashes.SetEnabled(enabled);
|
||||
return Task.FromResult(default(object));
|
||||
}
|
||||
|
||||
static Task<bool> PlatformHasCrashedInLastSessionAsync()
|
||||
{
|
||||
return Task.FromResult(iOSCrashes.HasCrashedInLastSession);
|
||||
return Task.FromResult(MSACCrashes.HasCrashedInLastSession);
|
||||
}
|
||||
|
||||
static Task<ErrorReport> PlatformGetLastSessionCrashReportAsync()
|
||||
{
|
||||
return Task.Run(() =>
|
||||
{
|
||||
var msReport = iOSCrashes.LastSessionCrashReport;
|
||||
var msReport = MSACCrashes.LastSessionCrashReport;
|
||||
return (msReport == null) ? null : new ErrorReport(msReport);
|
||||
});
|
||||
}
|
||||
|
||||
static Task<bool> PlatformHasReceivedMemoryWarningInLastSessionAsync()
|
||||
{
|
||||
return Task.FromResult(iOSCrashes.HasReceivedMemoryWarningInLastSession);
|
||||
return Task.FromResult(MSACCrashes.HasReceivedMemoryWarningInLastSession);
|
||||
}
|
||||
|
||||
static void PlatformNotifyUserConfirmation(UserConfirmation confirmation)
|
||||
{
|
||||
MSACUserConfirmation iosUserConfirmation;
|
||||
MSACUserConfirmation appleUserConfirmation;
|
||||
switch (confirmation)
|
||||
{
|
||||
case UserConfirmation.Send:
|
||||
iosUserConfirmation = MSACUserConfirmation.Send;
|
||||
appleUserConfirmation = MSACUserConfirmation.Send;
|
||||
break;
|
||||
case UserConfirmation.DontSend:
|
||||
iosUserConfirmation = MSACUserConfirmation.DontSend;
|
||||
appleUserConfirmation = MSACUserConfirmation.DontSend;
|
||||
break;
|
||||
case UserConfirmation.AlwaysSend:
|
||||
iosUserConfirmation = MSACUserConfirmation.Always;
|
||||
appleUserConfirmation = MSACUserConfirmation.Always;
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(confirmation), confirmation, null);
|
||||
}
|
||||
iOSCrashes.NotifyWithUserConfirmation(iosUserConfirmation);
|
||||
MSACCrashes.NotifyWithUserConfirmation(appleUserConfirmation);
|
||||
}
|
||||
|
||||
static void PlatformTrackError(Exception exception, IDictionary<string, string> properties, ErrorAttachmentLog[] attachments)
|
||||
|
@ -93,7 +91,7 @@ namespace Microsoft.AppCenter.Crashes
|
|||
}
|
||||
}
|
||||
}
|
||||
MSACCrashes.TrackException(GenerateiOSException(exception, false), propertyDictionary, attachmentArray);
|
||||
MSACCrashes.TrackException(GenerateAppleException(exception, false), propertyDictionary, attachmentArray);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -109,10 +107,10 @@ namespace Microsoft.AppCenter.Crashes
|
|||
static Crashes()
|
||||
{
|
||||
/* Perform custom setup around the native SDK's for setting signal handlers */
|
||||
iOSCrashes.DisableMachExceptionHandler();
|
||||
MSACCrashes.DisableMachExceptionHandler();
|
||||
MSACWrapperCrashesHelper.SetCrashHandlerSetupDelegate(_crashesInitializationDelegate);
|
||||
AppDomain.CurrentDomain.UnhandledException += OnUnhandledException;
|
||||
iOSCrashes.SetUserConfirmationHandler((reports) =>
|
||||
MSACCrashes.SetUserConfirmationHandler((reports) =>
|
||||
{
|
||||
if (ShouldAwaitUserConfirmation != null)
|
||||
{
|
||||
|
@ -120,14 +118,14 @@ namespace Microsoft.AppCenter.Crashes
|
|||
}
|
||||
return false;
|
||||
});
|
||||
iOSCrashes.SetDelegate(_crashesDelegate);
|
||||
MSACCrashes.SetDelegate(_crashesDelegate);
|
||||
}
|
||||
|
||||
static void OnUnhandledException(object sender, UnhandledExceptionEventArgs e)
|
||||
{
|
||||
var systemException = e.ExceptionObject as Exception;
|
||||
AppCenterLog.Error(LogTag, "Unhandled Exception:", systemException);
|
||||
var exception = GenerateiOSException(systemException, true);
|
||||
var exception = GenerateAppleException(systemException, true);
|
||||
var exceptionBytes = CrashesUtils.SerializeException(systemException) ?? new byte[0];
|
||||
var wrapperExceptionData = NSData.FromArray(exceptionBytes);
|
||||
var wrapperException = new MSACWrapperException
|
||||
|
@ -137,16 +135,20 @@ namespace Microsoft.AppCenter.Crashes
|
|||
ProcessId = new NSNumber(Process.GetCurrentProcess().Id)
|
||||
};
|
||||
AppCenterLog.Info(LogTag, "Saving wrapper exception...");
|
||||
#if __IOS__
|
||||
MSACWrapperExceptionManager.SaveWrapperException(wrapperException);
|
||||
#elif __MACOS__
|
||||
MSACWrapperExceptionManager.SaveWrapperExceptionAndCrashReport(wrapperException);
|
||||
#endif
|
||||
AppCenterLog.Info(LogTag, "Saved wrapper exception.");
|
||||
}
|
||||
|
||||
static MSACWrapperExceptionModel GenerateiOSException(Exception exception, bool structuredFrames)
|
||||
static MSACWrapperExceptionModel GenerateAppleException(Exception exception, bool structuredFrames)
|
||||
{
|
||||
var msException = new MSACWrapperExceptionModel();
|
||||
msException.Type = exception.GetType().FullName;
|
||||
msException.Message = exception.Message ?? "";
|
||||
msException.StackTrace = exception.StackTrace;
|
||||
msException.StackTrace = AnonymizePath(exception.StackTrace);
|
||||
msException.Frames = structuredFrames ? GenerateStackFrames(exception) : null;
|
||||
msException.WrapperSdkName = WrapperSdk.Name;
|
||||
|
||||
|
@ -157,12 +159,12 @@ namespace Microsoft.AppCenter.Crashes
|
|||
{
|
||||
foreach (Exception innerException in aggregateException.InnerExceptions)
|
||||
{
|
||||
innerExceptions.Add(GenerateiOSException(innerException, structuredFrames));
|
||||
innerExceptions.Add(GenerateAppleException(innerException, structuredFrames));
|
||||
}
|
||||
}
|
||||
else if (exception.InnerException != null)
|
||||
{
|
||||
innerExceptions.Add(GenerateiOSException(exception.InnerException, structuredFrames));
|
||||
innerExceptions.Add(GenerateAppleException(exception.InnerException, structuredFrames));
|
||||
}
|
||||
|
||||
msException.InnerExceptions = innerExceptions.Count > 0 ? innerExceptions.ToArray() : null;
|
||||
|
@ -209,7 +211,7 @@ namespace Microsoft.AppCenter.Crashes
|
|||
// Bridge between .NET events/callbacks and Apple native SDK
|
||||
class CrashesDelegate : MSACCrashesDelegate
|
||||
{
|
||||
public override bool CrashesShouldProcessErrorReport(iOSCrashes crashes, MSACErrorReport msReport)
|
||||
public override bool CrashesShouldProcessErrorReport(MSACCrashes crashes, MSACErrorReport msReport)
|
||||
{
|
||||
if (ShouldProcessErrorReport == null)
|
||||
{
|
||||
|
@ -219,7 +221,7 @@ namespace Microsoft.AppCenter.Crashes
|
|||
return ShouldProcessErrorReport(report);
|
||||
}
|
||||
|
||||
public override NSArray AttachmentsWithCrashes(iOSCrashes crashes, MSACErrorReport msReport)
|
||||
public override NSArray AttachmentsWithCrashes(MSACCrashes crashes, MSACErrorReport msReport)
|
||||
{
|
||||
if (GetErrorAttachments == null)
|
||||
{
|
||||
|
@ -246,7 +248,7 @@ namespace Microsoft.AppCenter.Crashes
|
|||
return null;
|
||||
}
|
||||
|
||||
public override void CrashesWillSendErrorReport(iOSCrashes crashes, MSACErrorReport msReport)
|
||||
public override void CrashesWillSendErrorReport(MSACCrashes crashes, MSACErrorReport msReport)
|
||||
{
|
||||
if (SendingErrorReport != null)
|
||||
{
|
||||
|
@ -259,7 +261,7 @@ namespace Microsoft.AppCenter.Crashes
|
|||
}
|
||||
}
|
||||
|
||||
public override void CrashesDidSucceedSendingErrorReport(iOSCrashes crashes, MSACErrorReport msReport)
|
||||
public override void CrashesDidSucceedSendingErrorReport(MSACCrashes crashes, MSACErrorReport msReport)
|
||||
{
|
||||
if (SentErrorReport != null)
|
||||
{
|
||||
|
@ -273,7 +275,7 @@ namespace Microsoft.AppCenter.Crashes
|
|||
|
||||
}
|
||||
|
||||
public override void CrashesDidFailSendingErrorReport(iOSCrashes crashes, MSACErrorReport msReport, NSError error)
|
||||
public override void CrashesDidFailSendingErrorReport(MSACCrashes crashes, MSACErrorReport msReport, NSError error)
|
||||
{
|
||||
if (FailedToSendErrorReport != null)
|
||||
{
|
||||
|
@ -295,7 +297,7 @@ namespace Microsoft.AppCenter.Crashes
|
|||
|
||||
private static void PlatformUnsetInstance()
|
||||
{
|
||||
iOSCrashes.ResetSharedInstance();
|
||||
MSACCrashes.ResetSharedInstance();
|
||||
}
|
||||
|
||||
public static bool UseMonoRuntimeSignalMethods { get; set; } = true;
|
|
@ -5,7 +5,7 @@ using System;
|
|||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Threading;
|
||||
using Microsoft.AppCenter.Crashes.iOS.Bindings;
|
||||
using Microsoft.AppCenter.Crashes.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes
|
||||
{
|
|
@ -2,7 +2,7 @@
|
|||
// Licensed under the MIT License.
|
||||
|
||||
using Foundation;
|
||||
using Microsoft.AppCenter.Crashes.iOS.Bindings;
|
||||
using Microsoft.AppCenter.Crashes.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes
|
||||
{
|
||||
|
@ -10,22 +10,22 @@ namespace Microsoft.AppCenter.Crashes
|
|||
{
|
||||
internal MSACErrorAttachmentLog internalAttachment { get; }
|
||||
|
||||
ErrorAttachmentLog(MSACErrorAttachmentLog iosAttachment)
|
||||
ErrorAttachmentLog(MSACErrorAttachmentLog appleAttachment)
|
||||
{
|
||||
internalAttachment = iosAttachment;
|
||||
internalAttachment = appleAttachment;
|
||||
}
|
||||
|
||||
static ErrorAttachmentLog PlatformAttachmentWithText(string text, string fileName)
|
||||
{
|
||||
MSACErrorAttachmentLog iosAttachment = MSACErrorAttachmentLog.AttachmentWithText(text, fileName);
|
||||
return new ErrorAttachmentLog(iosAttachment);
|
||||
MSACErrorAttachmentLog appleAttachment = MSACErrorAttachmentLog.AttachmentWithText(text, fileName);
|
||||
return new ErrorAttachmentLog(appleAttachment);
|
||||
}
|
||||
|
||||
static ErrorAttachmentLog PlatformAttachmentWithBinary(byte[] data, string filename, string contentType)
|
||||
{
|
||||
NSData nsdata = NSData.FromArray(data);
|
||||
MSACErrorAttachmentLog iosAttachment = MSACErrorAttachmentLog.AttachmentWithBinaryData(nsdata, filename, contentType);
|
||||
return new ErrorAttachmentLog(iosAttachment);
|
||||
MSACErrorAttachmentLog appleAttachment = MSACErrorAttachmentLog.AttachmentWithBinaryData(nsdata, filename, contentType);
|
||||
return new ErrorAttachmentLog(appleAttachment);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
using System;
|
||||
using Foundation;
|
||||
using Microsoft.AppCenter.Crashes.iOS.Bindings;
|
||||
using Microsoft.AppCenter.Crashes.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes
|
||||
{
|
|
@ -0,0 +1,58 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>net6.0-ios;net6.0-macos</TargetFrameworks>
|
||||
<IsBindingProject>true</IsBindingProject>
|
||||
<Optimize>true</Optimize>
|
||||
<Copyright>Microsoft Corp. All rights reserved.</Copyright>
|
||||
<Product>Microsoft.AppCenter.Crashes</Product>
|
||||
<Company>Microsoft Corporation</Company>
|
||||
<Version>4.5.4-SNAPSHOT</Version>
|
||||
<AssemblyVersion>0.0.0.0</AssemblyVersion>
|
||||
<FileVersion>4.5.4.0</FileVersion>
|
||||
<RootNamespace>Microsoft.AppCenter.Crashes</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter.Crashes</AssemblyName>
|
||||
<AssemblyTitle>Microsoft.AppCenter.Crashes</AssemblyTitle>
|
||||
<DocumentationFile>bin\$(Configuration)\$(TargetFramework)\Microsoft.AppCenter.Crashes.xml</DocumentationFile>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<NoBindingEmbedding>false</NoBindingEmbedding>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="$(TargetFramework.EndsWith('-ios'))">
|
||||
<SupportedOSPlatformVersion>10.0</SupportedOSPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="$(TargetFramework.EndsWith('-macos'))">
|
||||
<SupportedOSPlatformVersion>10.14</SupportedOSPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<MtouchLink>SdkOnly</MtouchLink>
|
||||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<MtouchLink>SdkOnly</MtouchLink>
|
||||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
<ObjcBindingCoreSource Include="StructsAndEnums.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(TargetFramework.EndsWith('-ios'))">
|
||||
<NativeReference Include="..\..\..\externals\apple\ios\AppCenterCrashes.a">
|
||||
<Kind>Static</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(TargetFramework.EndsWith('-macos'))">
|
||||
<NativeReference Include="..\..\..\externals\apple\macOS\AppCenterCrashes.framework">
|
||||
<Kind>Framework</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.AppleUnified\Microsoft.AppCenter.AppleUnified.csproj" />
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared.Xamarin\Microsoft.AppCenter.Crashes.Shared.Xamarin.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems" Label="Shared" />
|
||||
</Project>
|
|
@ -4,7 +4,8 @@
|
|||
using System;
|
||||
using ObjCRuntime;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes.iOS.Bindings {
|
||||
namespace Microsoft.AppCenter.Crashes.Apple.Bindings
|
||||
{
|
||||
[Native]
|
||||
public enum MSACErrorLogSetting : ulong
|
||||
{
|
|
@ -1,68 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}</ProjectGuid>
|
||||
<ProjectTypeGuids>{810C163F-4746-4721-8B8E-88A3673A62EA};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>Microsoft.AppCenter.Crashes.MacOS.Bindings</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter.Crashes.MacOS.Bindings</AssemblyName>
|
||||
<MacResourcePrefix>Resources</MacResourcePrefix>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Debug</OutputPath>
|
||||
<DefineConstants>DEBUG;</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release</OutputPath>
|
||||
<DefineConstants />
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="Xamarin.Mac" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingCoreSource Include="StructsAndEnums.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.MacOS.Bindings\Microsoft.AppCenter.MacOS.Bindings.csproj">
|
||||
<Project>{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}</Project>
|
||||
<Name>Microsoft.AppCenter.MacOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\macOS\AppCenterCrashes.framework">
|
||||
<Kind>Framework</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
<Frameworks />
|
||||
<LinkerFlags>-lc++</LinkerFlags>
|
||||
<IsCxx>True</IsCxx>
|
||||
<SmartLink>False</SmartLink>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.ObjcBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,34 +0,0 @@
|
|||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
|
||||
using Foundation;
|
||||
|
||||
// This attribute allows you to mark your assemblies as “safe to link”.
|
||||
// When the attribute is present, the linker—if enabled—will process the assembly
|
||||
// even if you’re using the “Link SDK assemblies only” option, which is the default for device builds.
|
||||
|
||||
[assembly: AssemblyMetadata("IsTrimmable", "False")]
|
||||
|
||||
// Information about this assembly is defined by the following attributes.
|
||||
// Change them to the values specific to your project.
|
||||
|
||||
[assembly: AssemblyTitle("Microsoft.AppCenter.Crashes.MacOS.Bindings")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("")]
|
||||
[assembly: AssemblyCopyright("${AuthorCopyright}")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
|
||||
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
|
||||
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
|
||||
|
||||
[assembly: AssemblyVersion("1.0.*")]
|
||||
|
||||
// The following attributes are used to specify the signing key for the assembly,
|
||||
// if desired. See the Mono documentation for more information about signing.
|
||||
|
||||
//[assembly: AssemblyDelaySign(false)]
|
||||
//[assembly: AssemblyKeyFile("")]
|
|
@ -1,21 +0,0 @@
|
|||
using System;
|
||||
using ObjCRuntime;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes.MacOS.Bindings
|
||||
{
|
||||
[Native]
|
||||
public enum MSACErrorLogSetting : ulong
|
||||
{
|
||||
Disabled = 0,
|
||||
AlwaysAsk = 1,
|
||||
AutoSend = 2
|
||||
}
|
||||
|
||||
[Native]
|
||||
public enum MSACUserConfirmation : ulong
|
||||
{
|
||||
DontSend = 0,
|
||||
Send = 1,
|
||||
Always = 2
|
||||
}
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
<Project>
|
||||
<Target Name="FixAppCenterCrashesSymlink" AfterTargets="_CollectFrameworks">
|
||||
<Message Text="symlinking AppCenterCrashes" />
|
||||
<Exec Command="cd $(AppBundleDir)\Contents\Frameworks\AppCenterCrashes.framework\ ; rm AppCenterCrashes ; ln -s Versions\A\AppCenterCrashes AppCenterCrashes" />
|
||||
</Target>
|
||||
</Project>
|
|
@ -1,294 +0,0 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using Foundation;
|
||||
using Microsoft.AppCenter.Crashes.MacOS.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes
|
||||
{
|
||||
using MacOSCrashes = MacOS.Bindings.MSACCrashes;
|
||||
|
||||
public partial class Crashes
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// Internal SDK property not intended for public use.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The macOS SDK Crashes bindings type.
|
||||
/// </value>
|
||||
[Preserve]
|
||||
public static Type BindingType => typeof(MacOSCrashes);
|
||||
|
||||
static Task<bool> PlatformIsEnabledAsync()
|
||||
{
|
||||
return Task.FromResult(MacOSCrashes.IsEnabled());
|
||||
}
|
||||
|
||||
static Task PlatformSetEnabledAsync(bool enabled)
|
||||
{
|
||||
MacOSCrashes.SetEnabled(enabled);
|
||||
return Task.FromResult(default(object));
|
||||
}
|
||||
|
||||
static Task<bool> PlatformHasCrashedInLastSessionAsync()
|
||||
{
|
||||
return Task.FromResult(MacOSCrashes.HasCrashedInLastSession);
|
||||
}
|
||||
|
||||
static Task<ErrorReport> PlatformGetLastSessionCrashReportAsync()
|
||||
{
|
||||
return Task.Run(() =>
|
||||
{
|
||||
var msReport = MacOSCrashes.LastSessionCrashReport;
|
||||
return (msReport == null) ? null : new ErrorReport(msReport);
|
||||
});
|
||||
}
|
||||
|
||||
static Task<bool> PlatformHasReceivedMemoryWarningInLastSessionAsync()
|
||||
{
|
||||
return Task.FromResult(MacOSCrashes.HasReceivedMemoryWarningInLastSession);
|
||||
}
|
||||
|
||||
static void PlatformNotifyUserConfirmation(UserConfirmation confirmation)
|
||||
{
|
||||
MSACUserConfirmation macosUserConfirmation;
|
||||
switch (confirmation)
|
||||
{
|
||||
case UserConfirmation.Send:
|
||||
macosUserConfirmation = MSACUserConfirmation.Send;
|
||||
break;
|
||||
case UserConfirmation.DontSend:
|
||||
macosUserConfirmation = MSACUserConfirmation.DontSend;
|
||||
break;
|
||||
case UserConfirmation.AlwaysSend:
|
||||
macosUserConfirmation = MSACUserConfirmation.Always;
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(confirmation), confirmation, null);
|
||||
}
|
||||
MacOSCrashes.NotifyWithUserConfirmation(macosUserConfirmation);
|
||||
}
|
||||
|
||||
static void PlatformTrackError(Exception exception, IDictionary<string, string> properties, ErrorAttachmentLog[] attachments)
|
||||
{
|
||||
NSDictionary propertyDictionary = properties != null ? StringDictToNSDict(properties) : new NSDictionary();
|
||||
NSMutableArray attachmentArray = new NSMutableArray();
|
||||
if (attachments != null)
|
||||
{
|
||||
foreach (var attachment in attachments)
|
||||
{
|
||||
if (attachment?.internalAttachment != null)
|
||||
{
|
||||
attachmentArray.Add(attachment.internalAttachment);
|
||||
}
|
||||
else
|
||||
{
|
||||
AppCenterLog.Warn(LogTag, "Skipping null ErrorAttachmentLog in Crashes.TrackError.");
|
||||
}
|
||||
}
|
||||
}
|
||||
MSACCrashes.TrackException(GenerateMacOSException(exception, false), propertyDictionary, attachmentArray);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// We keep the reference to avoid it being freed, inlining this object will cause listeners not to be called.
|
||||
/// </summary>
|
||||
static readonly CrashesInitializationDelegate _crashesInitializationDelegate = new CrashesInitializationDelegate();
|
||||
|
||||
/// <summary>
|
||||
/// We keep the reference to avoid it being freed, inlining this object will cause listeners not to be called.
|
||||
/// </summary>
|
||||
static readonly CrashesDelegate _crashesDelegate = new CrashesDelegate();
|
||||
|
||||
static Crashes()
|
||||
{
|
||||
/* Perform custom setup around the native SDK's for setting signal handlers */
|
||||
MacOSCrashes.DisableMachExceptionHandler();
|
||||
MSACWrapperCrashesHelper.SetCrashHandlerSetupDelegate(_crashesInitializationDelegate);
|
||||
AppDomain.CurrentDomain.UnhandledException += OnUnhandledException;
|
||||
MacOSCrashes.SetUserConfirmationHandler((reports) =>
|
||||
{
|
||||
if (ShouldAwaitUserConfirmation != null)
|
||||
{
|
||||
return ShouldAwaitUserConfirmation();
|
||||
}
|
||||
return false;
|
||||
});
|
||||
MacOSCrashes.SetDelegate(_crashesDelegate);
|
||||
}
|
||||
|
||||
static void OnUnhandledException(object sender, UnhandledExceptionEventArgs e)
|
||||
{
|
||||
var systemException = e.ExceptionObject as Exception;
|
||||
AppCenterLog.Error(LogTag, "Unhandled Exception:", systemException);
|
||||
var exception = GenerateMacOSException(systemException, true);
|
||||
var exceptionBytes = CrashesUtils.SerializeException(systemException) ?? new byte[0];
|
||||
var wrapperExceptionData = NSData.FromArray(exceptionBytes);
|
||||
var wrapperException = new MSACWrapperException
|
||||
{
|
||||
Exception = exception,
|
||||
ExceptionData = wrapperExceptionData,
|
||||
ProcessId = new NSNumber(Process.GetCurrentProcess().Id)
|
||||
};
|
||||
AppCenterLog.Info(LogTag, "Saving wrapper exception...");
|
||||
MSACWrapperExceptionManager.SaveWrapperExceptionAndCrashReport(wrapperException);
|
||||
AppCenterLog.Info(LogTag, "Saved wrapper exception.");
|
||||
}
|
||||
|
||||
static MSACWrapperExceptionModel GenerateMacOSException(Exception exception, bool structuredFrames)
|
||||
{
|
||||
var msException = new MSACWrapperExceptionModel();
|
||||
msException.Type = exception.GetType().FullName;
|
||||
msException.Message = exception.Message ?? "";
|
||||
msException.StackTrace = AnonymizePath(exception.StackTrace);
|
||||
msException.Frames = structuredFrames ? GenerateStackFrames(exception) : null;
|
||||
msException.WrapperSdkName = WrapperSdk.Name;
|
||||
var aggregateException = exception as AggregateException;
|
||||
var innerExceptions = new List<MSACWrapperExceptionModel>();
|
||||
if (aggregateException?.InnerExceptions != null)
|
||||
{
|
||||
foreach (Exception innerException in aggregateException.InnerExceptions)
|
||||
{
|
||||
innerExceptions.Add(GenerateMacOSException(innerException, structuredFrames));
|
||||
}
|
||||
}
|
||||
else if (exception.InnerException != null)
|
||||
{
|
||||
innerExceptions.Add(GenerateMacOSException(exception.InnerException, structuredFrames));
|
||||
}
|
||||
msException.InnerExceptions = innerExceptions.Count > 0 ? innerExceptions.ToArray() : null;
|
||||
return msException;
|
||||
}
|
||||
|
||||
#pragma warning disable XS0001 // Find usages of mono todo items
|
||||
|
||||
static MSACStackFrame[] GenerateStackFrames(Exception e)
|
||||
{
|
||||
var trace = new StackTrace(e, true);
|
||||
var frameList = new List<MSACStackFrame>();
|
||||
for (int i = 0; i < trace.FrameCount; ++i)
|
||||
{
|
||||
StackFrame dotnetFrame = trace.GetFrame(i);
|
||||
if (dotnetFrame.GetMethod() == null) continue;
|
||||
var msFrame = new MSACStackFrame();
|
||||
msFrame.Address = null;
|
||||
msFrame.Code = null;
|
||||
msFrame.MethodName = dotnetFrame.GetMethod().Name;
|
||||
msFrame.ClassName = dotnetFrame.GetMethod().DeclaringType?.FullName;
|
||||
msFrame.LineNumber = dotnetFrame.GetFileLineNumber() == 0 ? null : (NSNumber)(dotnetFrame.GetFileLineNumber());
|
||||
msFrame.FileName = AnonymizePath(dotnetFrame.GetFileName());
|
||||
frameList.Add(msFrame);
|
||||
}
|
||||
return frameList.ToArray();
|
||||
}
|
||||
|
||||
#pragma warning restore XS0001 // Find usages of mono todo items
|
||||
|
||||
static string AnonymizePath(string path)
|
||||
{
|
||||
if ((path == null) || (path.Count() == 0) || !path.Contains("/Users/"))
|
||||
{
|
||||
return path;
|
||||
}
|
||||
string pattern = "(/Users/[^/]+/)";
|
||||
return Regex.Replace(path, pattern, "/Users/USER/");
|
||||
}
|
||||
|
||||
// Bridge between .NET events/callbacks and Apple native SDK
|
||||
class CrashesDelegate : MSACCrashesDelegate
|
||||
{
|
||||
public override bool CrashesShouldProcessErrorReport(MacOSCrashes crashes, MSACErrorReport msReport)
|
||||
{
|
||||
if (ShouldProcessErrorReport == null)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
var report = new ErrorReport(msReport);
|
||||
return ShouldProcessErrorReport(report);
|
||||
}
|
||||
|
||||
public override NSArray AttachmentsWithCrashes(MacOSCrashes crashes, MSACErrorReport msReport)
|
||||
{
|
||||
if (GetErrorAttachments == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
var report = new ErrorReport(msReport);
|
||||
var attachments = GetErrorAttachments(report);
|
||||
if (attachments != null)
|
||||
{
|
||||
var nsArray = new NSMutableArray();
|
||||
foreach (var attachment in attachments)
|
||||
{
|
||||
if (attachment != null)
|
||||
{
|
||||
nsArray.Add(attachment.internalAttachment);
|
||||
}
|
||||
else
|
||||
{
|
||||
AppCenterLog.Warn(LogTag, "Skipping null ErrorAttachmentLog in Crashes.GetErrorAttachments.");
|
||||
}
|
||||
}
|
||||
return nsArray;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public override void CrashesWillSendErrorReport(MacOSCrashes crashes, MSACErrorReport msReport)
|
||||
{
|
||||
if (SendingErrorReport != null)
|
||||
{
|
||||
var report = new ErrorReport(msReport);
|
||||
var e = new SendingErrorReportEventArgs
|
||||
{
|
||||
Report = report
|
||||
};
|
||||
SendingErrorReport(null, e);
|
||||
}
|
||||
}
|
||||
|
||||
public override void CrashesDidSucceedSendingErrorReport(MacOSCrashes crashes, MSACErrorReport msReport)
|
||||
{
|
||||
if (SentErrorReport != null)
|
||||
{
|
||||
var report = new ErrorReport(msReport);
|
||||
var e = new SentErrorReportEventArgs
|
||||
{
|
||||
Report = report
|
||||
};
|
||||
SentErrorReport(null, e);
|
||||
}
|
||||
}
|
||||
|
||||
public override void CrashesDidFailSendingErrorReport(MacOSCrashes crashes, MSACErrorReport msReport, NSError error)
|
||||
{
|
||||
if (FailedToSendErrorReport != null)
|
||||
{
|
||||
var report = new ErrorReport(msReport);
|
||||
var e = new FailedToSendErrorReportEventArgs
|
||||
{
|
||||
Report = report,
|
||||
Exception = error
|
||||
};
|
||||
FailedToSendErrorReport(null, e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static NSDictionary StringDictToNSDict(IDictionary<string, string> dict)
|
||||
{
|
||||
return NSDictionary.FromObjectsAndKeys(dict.Values.ToArray(), dict.Keys.ToArray());
|
||||
}
|
||||
|
||||
private static void PlatformUnsetInstance()
|
||||
{
|
||||
MacOSCrashes.ResetSharedInstance();
|
||||
}
|
||||
|
||||
public static bool UseMonoRuntimeSignalMethods { get; set; } = true;
|
||||
}
|
||||
}
|
|
@ -1,106 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using System;
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Threading;
|
||||
using Microsoft.AppCenter.Crashes.MacOS.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes
|
||||
{
|
||||
/*
|
||||
* This class is required so that Mono can handle the signals SIGSEGV and SIGBUS, which should not always
|
||||
* cause a crash, but do if the native SDK's crash reporting service handles them.
|
||||
*/
|
||||
public class CrashesInitializationDelegate : MSACCrashHandlerSetupDelegate
|
||||
{
|
||||
[DllImport("libc")]
|
||||
private static extern int sigaction(Signal sig, IntPtr act, IntPtr oact);
|
||||
|
||||
private enum Signal
|
||||
{
|
||||
SIGFPE = 8,
|
||||
SIGBUS = 10,
|
||||
SIGSEGV = 11
|
||||
}
|
||||
|
||||
IntPtr sigbus;
|
||||
IntPtr sigsegv;
|
||||
IntPtr sigfpe;
|
||||
|
||||
/* This constructor is required for Mono's internal purposes. Deleting it can cause crashes. */
|
||||
public CrashesInitializationDelegate(IntPtr handle) : base(handle)
|
||||
{
|
||||
}
|
||||
|
||||
public CrashesInitializationDelegate()
|
||||
{
|
||||
}
|
||||
|
||||
// In Mono 4.8, it is possible to chain the mono signal handlers to the PLCrashReporter signal handlers, so
|
||||
// if the APIs for this are available, it is preferable to use them.
|
||||
public override void WillSetUpCrashHandlers()
|
||||
{
|
||||
if (Crashes.UseMonoRuntimeSignalMethods)
|
||||
{
|
||||
var type = Type.GetType("Mono.Runtime");
|
||||
var removeSignalHandlers = type?.GetMethod("RemoveSignalHandlers", BindingFlags.Public | BindingFlags.Static);
|
||||
if (removeSignalHandlers != null)
|
||||
{
|
||||
removeSignalHandlers.Invoke(null, null);
|
||||
AppCenterLog.Info(Crashes.LogTag, "Temporarily remove signal handlers while native crash reporter is initialized (Mono 4.8+).");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Mono 4.8+ APIs must be unavailable
|
||||
|
||||
// Allocate space to store the Mono handlers
|
||||
sigbus = Marshal.AllocHGlobal(512);
|
||||
sigsegv = Marshal.AllocHGlobal(512);
|
||||
sigfpe = Marshal.AllocHGlobal(512);
|
||||
|
||||
// Store Mono's SIGSEGV, SIGBUS, and SIGFPE handlers
|
||||
sigaction(Signal.SIGBUS, IntPtr.Zero, sigbus);
|
||||
sigaction(Signal.SIGSEGV, IntPtr.Zero, sigsegv);
|
||||
sigaction(Signal.SIGFPE, IntPtr.Zero, sigfpe);
|
||||
AppCenterLog.Info(Crashes.LogTag, "Temporarily remove signal handlers while native crash reporter is initialized (Mono < 4.8).");
|
||||
}
|
||||
|
||||
// In Mono 4.8, it is possible to chain the mono signal handlers to the PLCrashReporter signal handlers, so
|
||||
// if the APIs for this are available, it is preferable to use them.
|
||||
public override void DidSetUpCrashHandlers()
|
||||
{
|
||||
if (Crashes.UseMonoRuntimeSignalMethods)
|
||||
{
|
||||
var type = Type.GetType("Mono.Runtime");
|
||||
var installSignalHandlers = type?.GetMethod("InstallSignalHandlers", BindingFlags.Public | BindingFlags.Static);
|
||||
if (installSignalHandlers != null)
|
||||
{
|
||||
installSignalHandlers.Invoke(null, null);
|
||||
AppCenterLog.Info(Crashes.LogTag, "Restore signal handlers for Mono 4.8+.");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Mono 4.8+ APIs must be unavailable
|
||||
|
||||
// Restore Mono SIGSEGV, SIGBUS, and SIGFPE handlers
|
||||
sigaction(Signal.SIGBUS, sigbus, IntPtr.Zero);
|
||||
sigaction(Signal.SIGSEGV, sigsegv, IntPtr.Zero);
|
||||
sigaction(Signal.SIGFPE, sigfpe, IntPtr.Zero);
|
||||
|
||||
// Release previously allocated space
|
||||
Marshal.FreeHGlobal(sigbus);
|
||||
Marshal.FreeHGlobal(sigsegv);
|
||||
Marshal.FreeHGlobal(sigfpe);
|
||||
AppCenterLog.Info(Crashes.LogTag, "Restore signal handlers for Mono < 4.8.");
|
||||
}
|
||||
|
||||
public override bool ShouldEnableUncaughtExceptionHandler()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,28 +0,0 @@
|
|||
using Foundation;
|
||||
using Microsoft.AppCenter.Crashes.MacOS.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes
|
||||
{
|
||||
public partial class ErrorAttachmentLog
|
||||
{
|
||||
internal MSACErrorAttachmentLog internalAttachment { get; }
|
||||
|
||||
ErrorAttachmentLog(MSACErrorAttachmentLog macAttachment)
|
||||
{
|
||||
internalAttachment = macAttachment;
|
||||
}
|
||||
|
||||
static ErrorAttachmentLog PlatformAttachmentWithText(string text, string fileName)
|
||||
{
|
||||
MSACErrorAttachmentLog macAttachment = MSACErrorAttachmentLog.AttachmentWithText(text, fileName);
|
||||
return new ErrorAttachmentLog(macAttachment);
|
||||
}
|
||||
|
||||
static ErrorAttachmentLog PlatformAttachmentWithBinary(byte[] data, string filename, string contentType)
|
||||
{
|
||||
NSData nsdata = NSData.FromArray(data);
|
||||
MSACErrorAttachmentLog macAttachment = MSACErrorAttachmentLog.AttachmentWithBinaryData(nsdata, filename, contentType);
|
||||
return new ErrorAttachmentLog(macAttachment);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,41 +0,0 @@
|
|||
using System;
|
||||
using Foundation;
|
||||
using Microsoft.AppCenter.Crashes.MacOS.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes
|
||||
{
|
||||
public partial class ErrorReport
|
||||
{
|
||||
internal ErrorReport(MSACErrorReport msReport)
|
||||
{
|
||||
// If Id is not null we have loaded the report from the cache
|
||||
if (Id != null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
Id = msReport.IncidentIdentifier;
|
||||
AppStartTime = NSDateToDateTimeOffset(msReport.AppStartTime);
|
||||
AppErrorTime = NSDateToDateTimeOffset(msReport.AppErrorTime);
|
||||
Device = msReport.Device == null ? null : new Device(msReport.Device);
|
||||
AndroidDetails = null;
|
||||
iOSDetails = null;
|
||||
MacOSDetails = new MacOSErrorDetails(msReport.ReporterKey,
|
||||
msReport.Signal,
|
||||
msReport.ExceptionName,
|
||||
msReport.ExceptionReason,
|
||||
(uint)msReport.AppProcessIdentifier);
|
||||
MSACWrapperException wrapperException = MSACWrapperExceptionManager.LoadWrapperExceptionWithUUID(msReport.IncidentIdentifier);
|
||||
if (wrapperException != null && wrapperException.ExceptionData != null && wrapperException.ExceptionData.Length > 0)
|
||||
{
|
||||
StackTrace = CrashesUtils.DeserializeException(wrapperException.ExceptionData.ToArray());
|
||||
}
|
||||
}
|
||||
|
||||
private DateTimeOffset NSDateToDateTimeOffset(NSDate date)
|
||||
{
|
||||
DateTime dateTime = (DateTime)date;
|
||||
dateTime = DateTime.SpecifyKind(dateTime, DateTimeKind.Utc);
|
||||
return dateTime;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -14,6 +14,7 @@
|
|||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
|
@ -30,9 +31,10 @@
|
|||
<IncludeMonoRuntime>false</IncludeMonoRuntime>
|
||||
<UseSGen>false</UseSGen>
|
||||
<HttpClientHandler />
|
||||
<LinkMode />
|
||||
<LinkMode>None</LinkMode>
|
||||
<XamMacArch>x86_64</XamMacArch>
|
||||
<AOTMode>None</AOTMode>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
|
@ -47,9 +49,10 @@
|
|||
<IncludeMonoRuntime>false</IncludeMonoRuntime>
|
||||
<UseSGen>false</UseSGen>
|
||||
<HttpClientHandler />
|
||||
<LinkMode />
|
||||
<LinkMode>None</LinkMode>
|
||||
<XamMacArch>x86_64</XamMacArch>
|
||||
<AOTMode>None</AOTMode>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
|
@ -58,27 +61,27 @@
|
|||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="ErrorReport.cs" />
|
||||
<Compile Include="ErrorAttachmentLog.cs" />
|
||||
<Compile Include="Crashes.cs" />
|
||||
<Compile Include="CrashesUtils.cs" />
|
||||
<Compile Include="CrashesInitializationDelegate.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Crashes.AppleUnified\Crashes.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Crashes.AppleUnified\ErrorAttachmentLog.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Crashes.AppleUnified\ErrorReport.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Crashes.AppleUnified\CrashesUtils.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Crashes.AppleUnified\CrashesInitializationDelegate.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="..\Microsoft.AppCenter.Crashes.AppleUnified\ApiDefinition.cs">
|
||||
<Link>ApiDefinition.cs</Link>
|
||||
</ObjcBindingApiDefinition>
|
||||
<ObjcBindingCoreSource Include="..\Microsoft.AppCenter.Crashes.AppleUnified\StructsAndEnums.cs">
|
||||
<Link>StructsAndEnums.cs</Link>
|
||||
</ObjcBindingCoreSource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Microsoft.AppCenter.Crashes.MacOS.Bindings\Microsoft.AppCenter.Crashes.MacOS.Bindings.csproj">
|
||||
<Project>{85C929EF-7FF4-4C43-967E-DFA816EFF5E4}</Project>
|
||||
<Name>Microsoft.AppCenter.Crashes.MacOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.MacOS\Microsoft.AppCenter.MacOS.csproj">
|
||||
<Project>{727A9E5A-566A-4DC5-B62B-8F7CA17661B8}</Project>
|
||||
<Name>Microsoft.AppCenter.MacOS</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.MacOS.Bindings\Microsoft.AppCenter.MacOS.Bindings.csproj">
|
||||
<Project>{E97116CF-0A1F-41B0-A5A2-A5C4A3464BD4}</Project>
|
||||
<Name>Microsoft.AppCenter.MacOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared.Targets\Microsoft.AppCenter.Crashes.Shared.Targets.projitems" Label="Shared" Condition="Exists('..\Microsoft.AppCenter.Crashes.Shared.Targets\Microsoft.AppCenter.Crashes.Shared.Targets.projitems')" />
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems" Label="Shared" Condition="Exists('..\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.CSharp.targets" />
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared.Xamarin\Microsoft.AppCenter.Crashes.Shared.Xamarin.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.ObjcBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -6,6 +6,6 @@
|
|||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.Default.props" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.props" />
|
||||
<Import Project="Microsoft.AppCenter.Crashes.Shared.Targets.projitems" Label="Shared" />
|
||||
<Import Project="Microsoft.AppCenter.Crashes.Shared.Xamarin.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,292 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using System;
|
||||
using Foundation;
|
||||
using ObjCRuntime;
|
||||
using CoreFoundation;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes.iOS.Bindings
|
||||
{
|
||||
// @interface MSACErrorReport : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACErrorReport
|
||||
{
|
||||
// @property (readonly, nonatomic) NSString * incidentIdentifier;
|
||||
[Export("incidentIdentifier")]
|
||||
string IncidentIdentifier { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * reporterKey;
|
||||
[Export("reporterKey")]
|
||||
string ReporterKey { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * signal;
|
||||
[Export("signal")]
|
||||
string Signal { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * exceptionName;
|
||||
[Export("exceptionName")]
|
||||
string ExceptionName { get; }
|
||||
|
||||
// @property (readonly, nonatomic) NSString * exceptionReason;
|
||||
[Export("exceptionReason")]
|
||||
string ExceptionReason { get; }
|
||||
|
||||
// @property (readonly, nonatomic, strong) NSDate * appStartTime;
|
||||
[Export("appStartTime", ArgumentSemantic.Strong)]
|
||||
NSDate AppStartTime { get; }
|
||||
|
||||
// @property (readonly, nonatomic, strong) NSDate * appErrorTime;
|
||||
[Export("appErrorTime", ArgumentSemantic.Strong)]
|
||||
NSDate AppErrorTime { get; }
|
||||
|
||||
// @property (readonly, nonatomic) MSACDevice * device;
|
||||
[Export("device")]
|
||||
Microsoft.AppCenter.iOS.Bindings.MSACDevice Device { get; }
|
||||
|
||||
// @property (readonly, assign, nonatomic) NSUInteger appProcessIdentifier;
|
||||
[Export("appProcessIdentifier")]
|
||||
nuint AppProcessIdentifier { get; }
|
||||
|
||||
// -(BOOL)isAppKill;
|
||||
[Export("isAppKill")]
|
||||
//[Verify(MethodToProperty)]
|
||||
bool IsAppKill { get; }
|
||||
}
|
||||
|
||||
// typedef bool (^MSACUserConfirmationHandler)(NSArray<MSACErrorReport *> * _Nonnull);
|
||||
delegate bool MSACUserConfirmationHandler(MSACErrorReport[] reports);
|
||||
|
||||
// @interface MSACCrashes
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACCrashes
|
||||
{
|
||||
// +(void)setEnabled:(BOOL)isEnabled;
|
||||
[Static]
|
||||
[Export("setEnabled:")]
|
||||
void SetEnabled(bool isEnabled);
|
||||
|
||||
// +(BOOL)isEnabled;
|
||||
[Static]
|
||||
[Export("isEnabled")]
|
||||
bool IsEnabled();
|
||||
|
||||
// +(void)generateTestCrash;
|
||||
[Static]
|
||||
[Export("generateTestCrash")]
|
||||
void GenerateTestCrash();
|
||||
|
||||
//+(void)trackException:(MSACExceptionModel *)exception withProperties:(NSDictionary *)properties attachments:(nullable NSArray<MSACErrorAttachmentLog *> *)attachments;
|
||||
[Static]
|
||||
[Export("trackException:withProperties:attachments:")]
|
||||
void TrackException(MSACExceptionModel exception, NSDictionary properties, NSArray attachments);
|
||||
|
||||
//(BOOL)hasCrashedInLastSession;
|
||||
[Static]
|
||||
[Export("hasCrashedInLastSession")]
|
||||
bool HasCrashedInLastSession { get; }
|
||||
|
||||
//(BOOL)hasReceivedMemoryWarningInLastSession;
|
||||
[Static]
|
||||
[Export("hasReceivedMemoryWarningInLastSession")]
|
||||
bool HasReceivedMemoryWarningInLastSession { get; }
|
||||
|
||||
//(MSACErrorReport * _Nullable)lastSessionCrashReport;
|
||||
[Static]
|
||||
[NullAllowed, Export("lastSessionCrashReport")]
|
||||
MSACErrorReport LastSessionCrashReport { get; }
|
||||
|
||||
//(void)setDelegate:(id<MSACCrashesDelegate> _Nullable)delegate;
|
||||
[Static]
|
||||
[Export("setDelegate:")]
|
||||
void SetDelegate([NullAllowed] MSACCrashesDelegate crashesDelegate);
|
||||
|
||||
//(void)setUserConfirmationHandler:(MSACUserConfirmationHandler _Nullable)userConfirmationHandler;
|
||||
[Static]
|
||||
[Export("setUserConfirmationHandler:")]
|
||||
void SetUserConfirmationHandler([NullAllowed] MSACUserConfirmationHandler userConfirmationHandler);
|
||||
|
||||
//(void)notifyWithUserConfirmation:(MSACUserConfirmation)userConfirmation;
|
||||
[Static]
|
||||
[Export("notifyWithUserConfirmation:")]
|
||||
void NotifyWithUserConfirmation(MSACUserConfirmation userConfirmation);
|
||||
|
||||
//+(void)disableMachExceptionHandler;
|
||||
[Static]
|
||||
[Export("disableMachExceptionHandler")]
|
||||
void DisableMachExceptionHandler();
|
||||
|
||||
[Static]
|
||||
[Export("resetSharedInstance")]
|
||||
void ResetSharedInstance();
|
||||
}
|
||||
|
||||
// @protocol MSACCrashesDelegate <NSObject>
|
||||
[Protocol, Model]
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACCrashesDelegate
|
||||
{
|
||||
// @optional -(BOOL)crashes:(MSACCrashes *)crashes shouldProcessErrorReport:(MSACErrorReport *)errorReport;
|
||||
[Export("crashes:shouldProcessErrorReport:")]
|
||||
bool CrashesShouldProcessErrorReport(MSACCrashes crashes, MSACErrorReport errorReport);
|
||||
|
||||
// @optional - (NSArray<MSACErrorAttachmentLog *> *)attachmentsWithCrashes:(MSACCrashes *)crashes forErrorReport:(MSACErrorReport *)errorReport;
|
||||
[Export("attachmentsWithCrashes:forErrorReport:")]
|
||||
NSArray AttachmentsWithCrashes(MSACCrashes crashes, MSACErrorReport errorReport);
|
||||
|
||||
// @optional -(void)crashes:(MSACCrashes *)crashes willSendErrorReport:(MSACErrorReport *)errorReport;
|
||||
[Export("crashes:willSendErrorReport:")]
|
||||
void CrashesWillSendErrorReport(MSACCrashes crashes, MSACErrorReport errorReport);
|
||||
|
||||
// @optional -(void)crashes:(MSACCrashes *)crashes didSucceedSendingErrorReport:(MSACErrorReport *)errorReport;
|
||||
[Export("crashes:didSucceedSendingErrorReport:")]
|
||||
void CrashesDidSucceedSendingErrorReport(MSACCrashes crashes, MSACErrorReport errorReport);
|
||||
|
||||
// @optional -(void)crashes:(MSACCrashes *)crashes didFailSendingErrorReport:(MSACErrorReport *)errorReport withError:(NSError *)error;
|
||||
[Export("crashes:didFailSendingErrorReport:withError:")]
|
||||
void CrashesDidFailSendingErrorReport(MSACCrashes crashes, MSACErrorReport errorReport, NSError error);
|
||||
}
|
||||
|
||||
// @interface MSACErrorAttachmentLog : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACErrorAttachmentLog
|
||||
{
|
||||
// + (MSACErrorAttachmentLog *)attachmentWithText:(NSString *)text filename:(NSString *)filename;
|
||||
[Static]
|
||||
[Export("attachmentWithText:filename:")]
|
||||
MSACErrorAttachmentLog AttachmentWithText([NullAllowed] string text, [NullAllowed] string fileName);
|
||||
|
||||
// + (MSACErrorAttachmentLog *)attachmentWithBinary:(NSData *)data filename:(NSString*)filename contentType:(NSString*)contentType;
|
||||
[Static]
|
||||
[Export("attachmentWithBinary:filename:contentType:")]
|
||||
MSACErrorAttachmentLog AttachmentWithBinaryData(NSData data, [NullAllowed] string filename, string contentType);
|
||||
}
|
||||
|
||||
// @interface MSACExceptionModel : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACExceptionModel
|
||||
{
|
||||
// @property (nonatomic) NSString * _Nonnull type;
|
||||
[Export("type")]
|
||||
string Type { get; set; }
|
||||
|
||||
// @property (nonatomic) NSString * _Nonnull message;
|
||||
[Export("message")]
|
||||
string Message { get; set; }
|
||||
|
||||
// @property (nonatomic) NSString * _Nullable stackTrace;
|
||||
[NullAllowed, Export("stackTrace")]
|
||||
string StackTrace { get; set; }
|
||||
|
||||
// @property (nonatomic) NSArray<MSACStackFrame *> * _Nullable frames;
|
||||
[NullAllowed, Export("frames", ArgumentSemantic.Assign)]
|
||||
MSACStackFrame[] Frames { get; set; }
|
||||
}
|
||||
|
||||
// @interface MSACWrapperExceptionModel : MSACExceptionModel
|
||||
[BaseType(typeof(MSACExceptionModel))]
|
||||
interface MSACWrapperExceptionModel
|
||||
{
|
||||
// @property (nonatomic) NSArray<MSACException *> * _Nullable innerExceptions;
|
||||
[NullAllowed, Export("innerExceptions", ArgumentSemantic.Assign)]
|
||||
MSACWrapperExceptionModel[] InnerExceptions { get; set; }
|
||||
|
||||
// @property (nonatomic) NSString * _Nullable wrapperSdkName;
|
||||
[NullAllowed, Export("wrapperSdkName")]
|
||||
string WrapperSdkName { get; set; }
|
||||
|
||||
// -(BOOL)isEqual:(MSACWrapperExceptionModel * _Nullable)exception;
|
||||
[Export("isEqual:")]
|
||||
bool IsEqual([NullAllowed] MSACWrapperExceptionModel exception);
|
||||
}
|
||||
|
||||
// @interface MSACStackFrame : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACStackFrame
|
||||
{
|
||||
// @property (nonatomic) NSString * _Nullable address;
|
||||
[NullAllowed, Export("address")]
|
||||
string Address { get; set; }
|
||||
|
||||
// @property (nonatomic) NSString * _Nullable code;
|
||||
[NullAllowed, Export("code")]
|
||||
string Code { get; set; }
|
||||
|
||||
// @property (nonatomic) NSString * _Nullable className;
|
||||
[NullAllowed, Export("className")]
|
||||
string ClassName { get; set; }
|
||||
|
||||
// @property (nonatomic) NSString * _Nullable methodName;
|
||||
[NullAllowed, Export("methodName")]
|
||||
string MethodName { get; set; }
|
||||
|
||||
// @property (nonatomic) NSNumber * _Nullable lineNumber;
|
||||
[NullAllowed, Export("lineNumber", ArgumentSemantic.Assign)]
|
||||
NSNumber LineNumber { get; set; }
|
||||
|
||||
// @property (nonatomic) NSString * _Nullable fileName;
|
||||
[NullAllowed, Export("fileName")]
|
||||
string FileName { get; set; }
|
||||
|
||||
// -(BOOL)isEqual:(MSACStackFrame * _Nullable)frame;
|
||||
[Export("isEqual:")]
|
||||
bool IsEqual([NullAllowed] MSACStackFrame frame);
|
||||
}
|
||||
|
||||
|
||||
[Protocol, Model]
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACCrashHandlerSetupDelegate
|
||||
{
|
||||
//- (void) willSetUpCrashHandlers;
|
||||
[Export("willSetUpCrashHandlers")]
|
||||
void WillSetUpCrashHandlers();
|
||||
|
||||
//- (void) didSetUpCrashHandlers;
|
||||
[Export("didSetUpCrashHandlers")]
|
||||
void DidSetUpCrashHandlers();
|
||||
|
||||
//- (BOOL) shouldEnableUncaughtExceptionHandler;
|
||||
[Export("shouldEnableUncaughtExceptionHandler")]
|
||||
bool ShouldEnableUncaughtExceptionHandler();
|
||||
}
|
||||
|
||||
// @interface MSACWrapperExceptionManager : NSObject
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACWrapperExceptionManager
|
||||
{
|
||||
//+ (void) saveWrapperException:(MSACWrapperException*) wrapperException;
|
||||
[Static]
|
||||
[Export("saveWrapperException:")]
|
||||
void SaveWrapperException(MSACWrapperException wrapperException);
|
||||
|
||||
//+ (MSACWrapperException*) loadWrapperExceptionWithUUID:(NSString*) uuid;
|
||||
[Static]
|
||||
[Export("loadWrapperExceptionWithUUIDString:")]
|
||||
MSACWrapperException LoadWrapperExceptionWithUUID(string uuidString);
|
||||
}
|
||||
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACWrapperException
|
||||
{
|
||||
//@property(nonatomic, strong) MSACException* exception;
|
||||
[Export("modelException")]
|
||||
MSACWrapperExceptionModel Exception { get; set; }
|
||||
|
||||
//@property(nonatomic, strong) NSData* exceptionData;
|
||||
[Export("exceptionData")]
|
||||
NSData ExceptionData { get; set; }
|
||||
|
||||
[Export("processId")]
|
||||
NSNumber ProcessId { get; set; }
|
||||
}
|
||||
|
||||
[BaseType(typeof(NSObject))]
|
||||
interface MSACWrapperCrashesHelper
|
||||
{
|
||||
//+ (void) setCrashHandlerSetupDelegate:(id<MSACCrashHandlerSetupDelegate>) delegate;
|
||||
[Static]
|
||||
[Export("setCrashHandlerSetupDelegate:")]
|
||||
void SetCrashHandlerSetupDelegate(MSACCrashHandlerSetupDelegate del);
|
||||
}
|
||||
}
|
|
@ -1,69 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{FCEB9729-627A-4964-B853-1649CA1FA76D}</ProjectGuid>
|
||||
<ProjectTypeGuids>{8FFB629D-F513-41CE-95D2-7ECE97B6EEEC};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>Microsoft.AppCenter.Crashes.iOS.Bindings</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter.Crashes.iOS.Bindings</AssemblyName>
|
||||
<IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Debug</OutputPath>
|
||||
<DefineConstants>DEBUG;</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release</OutputPath>
|
||||
<DefineConstants>
|
||||
</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="Xamarin.iOS" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingCoreSource Include="StructsAndEnums.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.iOS.Bindings\Microsoft.AppCenter.iOS.Bindings.csproj">
|
||||
<Project>{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}</Project>
|
||||
<Name>Microsoft.AppCenter.iOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\ios\AppCenterCrashes.a">
|
||||
<Kind>Static</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
<Frameworks>
|
||||
</Frameworks>
|
||||
<LinkerFlags>-lc++</LinkerFlags>
|
||||
<IsCxx>True</IsCxx>
|
||||
<SmartLink>False</SmartLink>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.ObjCBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,37 +0,0 @@
|
|||
using Foundation;
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using System.Reflection;
|
||||
|
||||
// This attribute allows you to mark your assemblies as “safe to link”.
|
||||
// When the attribute is present, the linker—if enabled—will process the assembly
|
||||
// even if you’re using the “Link SDK assemblies only” option, which is the default for device builds.
|
||||
|
||||
[assembly: LinkerSafe]
|
||||
|
||||
// Information about this assembly is defined by the following attributes.
|
||||
// Change them to the values specific to your project.
|
||||
|
||||
[assembly: AssemblyTitle("Microsoft.AppCenter.Crashes.iOS.Bindings")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("Microsoft Corporation")]
|
||||
[assembly: AssemblyProduct("")]
|
||||
[assembly: AssemblyCopyright("Microsoft Corp. All rights reserved.")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("0.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("4.5.4.0")]
|
||||
[assembly: AssemblyInformationalVersion("4.5.4-SNAPSHOT")]
|
|
@ -1,29 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using System;
|
||||
using System.Text;
|
||||
|
||||
namespace Microsoft.AppCenter.Crashes
|
||||
{
|
||||
internal static class CrashesUtils
|
||||
{
|
||||
internal static byte[] SerializeException(Exception exception)
|
||||
{
|
||||
return Encoding.UTF8.GetBytes(exception.ToString());
|
||||
}
|
||||
|
||||
internal static string DeserializeException(byte[] exceptionBytes)
|
||||
{
|
||||
try
|
||||
{
|
||||
return Encoding.UTF8.GetString(exceptionBytes);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
AppCenterLog.Warn(Crashes.LogTag, "Failed to deserialize exception for client side inspection.", e);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -12,6 +12,7 @@
|
|||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
|
@ -21,13 +22,12 @@
|
|||
<DefineConstants>DEBUG;</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<MtouchLink>
|
||||
</MtouchLink>
|
||||
<MtouchHttpClientHandler>
|
||||
</MtouchHttpClientHandler>
|
||||
<MtouchLink>SdkOnly</MtouchLink>
|
||||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
<MtouchTlsProvider>
|
||||
</MtouchTlsProvider>
|
||||
<DocumentationFile>bin\Debug\Microsoft.AppCenter.Crashes.xml</DocumentationFile>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
|
@ -36,17 +36,15 @@
|
|||
</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<MtouchLink>
|
||||
</MtouchLink>
|
||||
<MtouchHttpClientHandler>
|
||||
</MtouchHttpClientHandler>
|
||||
<MtouchLink>SdkOnly</MtouchLink>
|
||||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
<MtouchTlsProvider>
|
||||
</MtouchTlsProvider>
|
||||
<DocumentationFile>bin\Release\Microsoft.AppCenter.Crashes.xml</DocumentationFile>
|
||||
<DocumentationFile>bin\Release\Microsoft.AppCenter.Crashes.xml</DocumentationFile>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="Xamarin.iOS" />
|
||||
</ItemGroup>
|
||||
|
@ -54,31 +52,31 @@
|
|||
<Folder Include="Resources\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Crashes.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="ErrorAttachmentLog.cs" />
|
||||
<Compile Include="ErrorReport.cs" />
|
||||
<Compile Include="CrashesUtils.cs" />
|
||||
<Compile Include="CrashesInitializationDelegate.cs" />
|
||||
<None Include="Info.plist" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Crashes.AppleUnified\Crashes.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Crashes.AppleUnified\ErrorAttachmentLog.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Crashes.AppleUnified\ErrorReport.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Crashes.AppleUnified\CrashesUtils.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Crashes.AppleUnified\CrashesInitializationDelegate.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="..\Microsoft.AppCenter.Crashes.AppleUnified\ApiDefinition.cs">
|
||||
<Link>ApiDefinition.cs</Link>
|
||||
</ObjcBindingApiDefinition>
|
||||
<ObjcBindingCoreSource Include="..\Microsoft.AppCenter.Crashes.AppleUnified\StructsAndEnums.cs">
|
||||
<Link>StructsAndEnums.cs</Link>
|
||||
</ObjcBindingCoreSource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Microsoft.AppCenter.Crashes.iOS.Bindings\Microsoft.AppCenter.Crashes.iOS.Bindings.csproj">
|
||||
<Project>{FCEB9729-627A-4964-B853-1649CA1FA76D}</Project>
|
||||
<Name>Microsoft.AppCenter.Crashes.iOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.iOS\Microsoft.AppCenter.iOS.csproj">
|
||||
<Project>{B87370CD-AF51-45E0-AA15-3E0ABC0C30A0}</Project>
|
||||
<Name>Microsoft.AppCenter.iOS</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.iOS.Bindings\Microsoft.AppCenter.iOS.Bindings.csproj">
|
||||
<Project>{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}</Project>
|
||||
<Name>Microsoft.AppCenter.iOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Info.plist" />
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared.Targets\Microsoft.AppCenter.Crashes.Shared.Targets.projitems" Label="Shared" Condition="Exists('..\Microsoft.AppCenter.Crashes.Shared.Targets\Microsoft.AppCenter.Crashes.Shared.Targets.projitems')" />
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems" Label="Shared" Condition="Exists('..\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared.Xamarin\Microsoft.AppCenter.Crashes.Shared.Xamarin.projitems" Label="Shared" />
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.ObjCBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project Sdk="MSBuild.Sdk.Extras/3.0.44">
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="..\Microsoft.AppCenter.Crashes.Shared\Microsoft.AppCenter.Crashes.Shared.projitems" Label="Shared" />
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netstandard1.0</TargetFramework>
|
||||
|
@ -23,4 +23,4 @@
|
|||
<Folder Include="Properties\" />
|
||||
</ItemGroup>
|
||||
<Target Name="GetPackagingOutputs" />
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
using Foundation;
|
||||
|
||||
namespace Microsoft.AppCenter.Distribute.iOS.Bindings
|
||||
namespace Microsoft.AppCenter.Distribute.Apple.Bindings
|
||||
{
|
||||
// @interface MSACDistribute : MSACService
|
||||
[BaseType(typeof(NSObject))]
|
|
@ -4,15 +4,13 @@
|
|||
using System;
|
||||
using System.Threading.Tasks;
|
||||
using Foundation;
|
||||
using Microsoft.AppCenter.Distribute.iOS.Bindings;
|
||||
using Microsoft.AppCenter.Distribute.Apple.Bindings;
|
||||
|
||||
namespace Microsoft.AppCenter.Distribute
|
||||
{
|
||||
using iOSDistribute = iOS.Bindings.MSACDistribute;
|
||||
|
||||
public static partial class Distribute
|
||||
{
|
||||
static Type _internalBindingType = typeof(iOSDistribute);
|
||||
static Type _internalBindingType = typeof(MSACDistribute);
|
||||
|
||||
[Preserve]
|
||||
public static Type BindingType
|
||||
|
@ -25,23 +23,23 @@ namespace Microsoft.AppCenter.Distribute
|
|||
|
||||
static Task<bool> PlatformIsEnabledAsync()
|
||||
{
|
||||
return Task.FromResult(iOSDistribute.IsEnabled());
|
||||
return Task.FromResult(MSACDistribute.IsEnabled());
|
||||
}
|
||||
|
||||
static Task PlatformSetEnabledAsync(bool enabled)
|
||||
{
|
||||
iOSDistribute.SetEnabled(enabled);
|
||||
MSACDistribute.SetEnabled(enabled);
|
||||
return Task.FromResult(default(object));
|
||||
}
|
||||
|
||||
static void PlatformSetInstallUrl(string installUrl)
|
||||
{
|
||||
iOSDistribute.SetInstallUrl(installUrl);
|
||||
MSACDistribute.SetInstallUrl(installUrl);
|
||||
}
|
||||
|
||||
static void PlatformSetApiUrl(string apiUrl)
|
||||
{
|
||||
iOSDistribute.SetApiUrl(apiUrl);
|
||||
MSACDistribute.SetApiUrl(apiUrl);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -51,7 +49,7 @@ namespace Microsoft.AppCenter.Distribute
|
|||
/// <param name="url">The url with parameters.</param>
|
||||
public static void OpenUrl(NSUrl url)
|
||||
{
|
||||
iOSDistribute.OpenUrl(url);
|
||||
MSACDistribute.OpenUrl(url);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -87,7 +85,7 @@ namespace Microsoft.AppCenter.Distribute
|
|||
if (_delegate == null && _releaseAvailableCallback != null)
|
||||
{
|
||||
_delegate = new Delegate();
|
||||
iOSDistribute.SetDelegate(_delegate);
|
||||
MSACDistribute.SetDelegate(_delegate);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -100,7 +98,7 @@ namespace Microsoft.AppCenter.Distribute
|
|||
if (_delegate == null && _willExitAppCallback != null)
|
||||
{
|
||||
_delegate = new Delegate();
|
||||
iOSDistribute.SetDelegate(_delegate);
|
||||
MSACDistribute.SetDelegate(_delegate);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -113,7 +111,7 @@ namespace Microsoft.AppCenter.Distribute
|
|||
if (_delegate == null && _noReleaseAvailableCallback != null)
|
||||
{
|
||||
_delegate = new Delegate();
|
||||
iOSDistribute.SetDelegate(_delegate);
|
||||
MSACDistribute.SetDelegate(_delegate);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -123,11 +121,11 @@ namespace Microsoft.AppCenter.Distribute
|
|||
switch (updateAction)
|
||||
{
|
||||
case UpdateAction.Update:
|
||||
iOSDistribute.NotifyUpdateAction(MSACUpdateAction.Update);
|
||||
MSACDistribute.NotifyUpdateAction(MSACUpdateAction.Update);
|
||||
break;
|
||||
|
||||
case UpdateAction.Postpone:
|
||||
iOSDistribute.NotifyUpdateAction(MSACUpdateAction.Postpone);
|
||||
MSACDistribute.NotifyUpdateAction(MSACUpdateAction.Postpone);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -135,33 +133,33 @@ namespace Microsoft.AppCenter.Distribute
|
|||
static void SetUpdateTrack(UpdateTrack updateTrack)
|
||||
{
|
||||
var updateTrackValue = (int)updateTrack;
|
||||
iOSDistribute.SetUpdateTrack((MSACUpdateTrack)updateTrackValue);
|
||||
MSACDistribute.SetUpdateTrack((MSACUpdateTrack)updateTrackValue);
|
||||
}
|
||||
|
||||
static UpdateTrack GetUpdateTrack()
|
||||
{
|
||||
var updateTrackValue = (int)iOSDistribute.GetUpdateTrack();
|
||||
var updateTrackValue = (int)MSACDistribute.GetUpdateTrack();
|
||||
return (UpdateTrack)updateTrackValue;
|
||||
}
|
||||
|
||||
static void PlatformCheckForUpdate()
|
||||
{
|
||||
iOSDistribute.CheckForUpdate();
|
||||
MSACDistribute.CheckForUpdate();
|
||||
}
|
||||
|
||||
static void PlatformDisableAutomaticCheckForUpdate()
|
||||
{
|
||||
iOSDistribute.DisableAutomaticCheckForUpdate();
|
||||
MSACDistribute.DisableAutomaticCheckForUpdate();
|
||||
}
|
||||
|
||||
private static void PlatformUnsetInstance()
|
||||
{
|
||||
iOSDistribute.ResetSharedInstance();
|
||||
MSACDistribute.ResetSharedInstance();
|
||||
}
|
||||
|
||||
public class Delegate : MSACDistributeDelegate
|
||||
{
|
||||
public override bool OnReleaseAvailable(iOSDistribute distribute, MSACReleaseDetails details)
|
||||
public override bool OnReleaseAvailable(MSACDistribute distribute, MSACReleaseDetails details)
|
||||
{
|
||||
if (_releaseAvailableCallback != null)
|
||||
{
|
||||
|
@ -184,7 +182,7 @@ namespace Microsoft.AppCenter.Distribute
|
|||
return false;
|
||||
}
|
||||
|
||||
public override void WillExitApp(iOSDistribute distribute)
|
||||
public override void WillExitApp(MSACDistribute distribute)
|
||||
{
|
||||
_willExitAppCallback?.Invoke();
|
||||
}
|
|
@ -0,0 +1,57 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>net6.0-ios;net6.0-macos</TargetFrameworks>
|
||||
<IsBindingProject>true</IsBindingProject>
|
||||
<Optimize>true</Optimize>
|
||||
<Copyright>Microsoft Corp. All rights reserved.</Copyright>
|
||||
<Product>Microsoft.AppCenter.Distribute</Product>
|
||||
<Company>Microsoft Corporation</Company>
|
||||
<Version>4.5.4-SNAPSHOT</Version>
|
||||
<AssemblyVersion>0.0.0.0</AssemblyVersion>
|
||||
<FileVersion>4.5.4.0</FileVersion>
|
||||
<RootNamespace>Microsoft.AppCenter.Distribute</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter.Distribute</AssemblyName>
|
||||
<AssemblyTitle>Microsoft.AppCenter.Distribute</AssemblyTitle>
|
||||
<DocumentationFile>bin\$(Configuration)\$(TargetFramework)\Microsoft.AppCenter.Distribute.xml</DocumentationFile>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<NoBindingEmbedding>false</NoBindingEmbedding>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="$(TargetFramework.EndsWith('-ios'))">
|
||||
<SupportedOSPlatformVersion>10.0</SupportedOSPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="$(TargetFramework.EndsWith('-macos'))">
|
||||
<SupportedOSPlatformVersion>10.14</SupportedOSPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<MtouchLink>SdkOnly</MtouchLink>
|
||||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<MtouchLink>SdkOnly</MtouchLink>
|
||||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
<ObjcBindingCoreSource Include="StructsAndEnums.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(TargetFramework.EndsWith('-ios'))">
|
||||
<NativeReference Include="..\..\..\externals\apple\ios\AppCenterDistribute.a">
|
||||
<Kind>Static</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(TargetFramework.EndsWith('-macos'))">
|
||||
<NativeReference Include="..\..\..\externals\apple\macOS\AppCenterDistribute.framework">
|
||||
<Kind>Framework</Kind>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.AppleUnified\Microsoft.AppCenter.AppleUnified.csproj" />
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Distribute.Shared\Microsoft.AppCenter.Distribute.Shared.projitems" Label="Shared" />
|
||||
</Project>
|
|
@ -4,7 +4,7 @@
|
|||
using System;
|
||||
using ObjCRuntime;
|
||||
|
||||
namespace Microsoft.AppCenter.Distribute.iOS.Bindings
|
||||
namespace Microsoft.AppCenter.Distribute.Apple.Bindings
|
||||
{
|
||||
[Native]
|
||||
public enum MSACUpdateAction : ulong
|
|
@ -1,112 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}</ProjectGuid>
|
||||
<ProjectTypeGuids>{8FFB629D-F513-41CE-95D2-7ECE97B6EEEC};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>Microsoft.AppCenter.Distribute.iOS.Bindings</RootNamespace>
|
||||
<AssemblyName>Microsoft.AppCenter.Distribute.iOS.Bindings</AssemblyName>
|
||||
<IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Debug</OutputPath>
|
||||
<DefineConstants>DEBUG;</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release</OutputPath>
|
||||
<DefineConstants></DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="Xamarin.iOS" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingApiDefinition Include="ApiDefinition.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ObjcBindingCoreSource Include="StructsAndEnums.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.iOS.Bindings\Microsoft.AppCenter.iOS.Bindings.csproj">
|
||||
<Project>{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}</Project>
|
||||
<Name>Microsoft.AppCenter.iOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="Resources\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<NativeReference Include="..\..\..\externals\apple\ios\AppCenterDistribute.a">
|
||||
<Kind>Static</Kind>
|
||||
<SmartLink>False</SmartLink>
|
||||
<ForceLoad>True</ForceLoad>
|
||||
<WeakFrameworks>SafariServices AuthenticationServices</WeakFrameworks>
|
||||
</NativeReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\Info.plist">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\Info.plist</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\cs.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\cs.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\de.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\de.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\en.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\en.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\es.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\es.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\fr.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\fr.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\it.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\it.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\ja.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\ja.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\ko.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\ko.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\pl.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\pl.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\ru.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\ru.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\tr.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\tr.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\zh-Hans.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\zh-Hans.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
<BundleResource Include="..\..\..\externals\apple\ios\AppCenterDistributeResources.bundle\zh-Hant.lproj\AppCenterDistribute.strings">
|
||||
<Link>Resources\AppCenterDistributeResources.bundle\zh-Hant.lproj\AppCenterDistribute.strings</Link>
|
||||
</BundleResource>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.ObjCBinding.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,39 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
|
||||
using Foundation;
|
||||
|
||||
// This attribute allows you to mark your assemblies as “safe to link”.
|
||||
// When the attribute is present, the linker—if enabled—will process the assembly
|
||||
// even if you’re using the “Link SDK assemblies only” option, which is the default for device builds.
|
||||
|
||||
[assembly: LinkerSafe]
|
||||
|
||||
// Information about this assembly is defined by the following attributes.
|
||||
// Change them to the values specific to your project.
|
||||
|
||||
[assembly: AssemblyTitle("Microsoft.AppCenter.Distribute.iOS.Bindings")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("Microsoft Corporation")]
|
||||
[assembly: AssemblyProduct("")]
|
||||
[assembly: AssemblyCopyright("Microsoft Corp. All rights reserved.")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("0.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("4.5.4.0")]
|
||||
[assembly: AssemblyInformationalVersion("4.5.4-SNAPSHOT")]
|
|
@ -12,6 +12,7 @@
|
|||
<SignAssembly>true</SignAssembly>
|
||||
<DelaySign>true</DelaySign>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\appcenter-public-key.snk</AssemblyOriginatorKeyFile>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
|
@ -30,6 +31,7 @@
|
|||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
<MtouchTlsProvider>Default</MtouchTlsProvider>
|
||||
<DocumentationFile>bin\Debug\Microsoft.AppCenter.Distribute.xml</DocumentationFile>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
@ -43,10 +45,10 @@
|
|||
<MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
|
||||
<MtouchTlsProvider>Default</MtouchTlsProvider>
|
||||
<DocumentationFile>bin\Release\Microsoft.AppCenter.Distribute.xml</DocumentationFile>
|
||||
<NoWarn>1591</NoWarn>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="Xamarin.iOS" />
|
||||
</ItemGroup>
|
||||
|
@ -55,18 +57,19 @@
|
|||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Distribute.cs" />
|
||||
<Compile Include="..\Microsoft.AppCenter.Distribute.AppleUnified\Distribute.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\AppCenter\Microsoft.AppCenter.iOS.Bindings\Microsoft.AppCenter.iOS.Bindings.csproj">
|
||||
<Project>{5490FECC-63B2-4543-B4FE-EDD8D1BD8351}</Project>
|
||||
<Name>Microsoft.AppCenter.iOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Microsoft.AppCenter.Distribute.iOS.Bindings\Microsoft.AppCenter.Distribute.iOS.Bindings.csproj">
|
||||
<Project>{278DFD3C-A0DD-4DD2-97C5-44EC4BEE8462}</Project>
|
||||
<Name>Microsoft.AppCenter.Distribute.iOS.Bindings</Name>
|
||||
</ProjectReference>
|
||||
<ObjcBindingApiDefinition Include="..\Microsoft.AppCenter.Distribute.AppleUnified\ApiDefinition.cs">
|
||||
<Link>ApiDefinition.cs</Link>
|
||||
</ObjcBindingApiDefinition>
|
||||
<ObjcBindingCoreSource Include="..\Microsoft.AppCenter.Distribute.AppleUnified\StructsAndEnums.cs">
|
||||
<Link>StructsAndEnums.cs</Link>
|
||||
</ObjcBindingCoreSource>
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Distribute.Shared\Microsoft.AppCenter.Distribute.Shared.projitems" Label="Shared" Condition="Exists('..\Microsoft.AppCenter.Distribute.Shared\Microsoft.AppCenter.Distribute.Shared.projitems')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
||||
<ItemGroup>
|
||||
<None Include="Info.plist" />
|
||||
</ItemGroup>
|
||||
<Import Project="..\Microsoft.AppCenter.Distribute.Shared\Microsoft.AppCenter.Distribute.Shared.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.ObjCBinding.CSharp.targets" />
|
||||
</Project>
|
55
build.cake
55
build.cake
|
@ -1,11 +1,8 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
|
||||
#tool nuget:?package=XamarinComponent
|
||||
#addin nuget:?package=Cake.FileHelpers&version=3.0.0
|
||||
#addin nuget:?package=Cake.Git&version=0.18.0
|
||||
#addin nuget:?package=Cake.Incubator&version=2.0.2
|
||||
#addin nuget:?package=Cake.Xamarin
|
||||
#addin nuget:?package=Cake.FileHelpers&version=5.0.0
|
||||
#addin nuget:?package=Cake.Incubator&version=7.0.0
|
||||
#load "scripts/utility.cake"
|
||||
#load "scripts/configuration/config-parser.cake"
|
||||
|
||||
|
@ -58,8 +55,11 @@ Task("Build")
|
|||
.Does(() =>
|
||||
{
|
||||
var platformId = IsRunningOnUnix() ? "mac" : "windows";
|
||||
var buildGroup = new BuildGroup(platformId);
|
||||
buildGroup.ExecuteBuilds();
|
||||
var buildGroups = BuildGroup.ReadBuildGroups(platformId);
|
||||
foreach (var buildGroup in buildGroups)
|
||||
{
|
||||
buildGroup.ExecuteBuilds();
|
||||
}
|
||||
}).OnError(HandleError);
|
||||
|
||||
Task("PrepareAssemblies")
|
||||
|
@ -84,10 +84,15 @@ Task("Externals-Android")
|
|||
.Does(() =>
|
||||
{
|
||||
var zipFile = System.IO.Path.Combine(AndroidExternals, "android.zip");
|
||||
if (FileExists(zipFile))
|
||||
{
|
||||
return;
|
||||
}
|
||||
CleanDirectory(AndroidExternals);
|
||||
|
||||
// Download zip file.
|
||||
DownloadFile(AndroidUrl, zipFile);
|
||||
using (VerboseVerbosity())
|
||||
DownloadFile(AndroidUrl, zipFile);
|
||||
Unzip(zipFile, AndroidExternals);
|
||||
|
||||
// Move binaries to externals/android so that linked files don't have versions
|
||||
|
@ -101,25 +106,31 @@ Task("Externals-Apple")
|
|||
.WithCriteria(() => IsRunningOnUnix())
|
||||
.Does(() =>
|
||||
{
|
||||
CleanDirectory(AppleExternals);
|
||||
var zipFile = System.IO.Path.Combine(AppleExternals, "apple.zip");
|
||||
if (FileExists(zipFile))
|
||||
{
|
||||
return;
|
||||
}
|
||||
CleanDirectory(AppleExternals);
|
||||
|
||||
// Download zip file containing AppCenter frameworks.
|
||||
DownloadFile(AppleUrl, zipFile);
|
||||
|
||||
// Unzip.
|
||||
// StartProcess("unzipr", new ProcessSettings{ Arguments = $"{zipFile} -d {AppleExternals}" });
|
||||
// Download zip file.
|
||||
using (VerboseVerbosity())
|
||||
DownloadFile(AppleUrl, zipFile);
|
||||
using(var process = StartAndReturnProcess("unzip",
|
||||
new ProcessSettings { Arguments =new ProcessArgumentBuilder()
|
||||
.Append(zipFile)
|
||||
.Append("-d")
|
||||
.Append(AppleExternals)
|
||||
new ProcessSettings
|
||||
{
|
||||
Arguments = new ProcessArgumentBuilder()
|
||||
.Append(zipFile)
|
||||
.Append("-d")
|
||||
.Append(AppleExternals),
|
||||
RedirectStandardOutput = true,
|
||||
}))
|
||||
{
|
||||
process.WaitForExit();
|
||||
// This should output 0 as valid arguments supplied
|
||||
Information($"Exit code: {process.GetExitCode()}");
|
||||
Information($"error: {process.GetStandardError()}, output: {process.GetStandardError()}");
|
||||
process.WaitForExit(10000);
|
||||
if (process.GetExitCode() != 0)
|
||||
{
|
||||
throw new Exception($"Failed to unzip {zipFile}");
|
||||
}
|
||||
}
|
||||
|
||||
var iosFrameworksLocation = System.IO.Path.Combine(AppleExternals, "AppCenter-SDK-Apple/iOS");
|
||||
|
|
237
build.ps1
237
build.ps1
|
@ -1,235 +1,16 @@
|
|||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
# Licensed under the MIT License.
|
||||
|
||||
##########################################################################
|
||||
# This is the Cake bootstrapper script for PowerShell.
|
||||
# This file was downloaded from https://github.com/cake-build/resources
|
||||
# Feel free to change this file to fit your needs.
|
||||
##########################################################################
|
||||
$ErrorActionPreference = 'Stop'
|
||||
|
||||
<#
|
||||
Set-Location -LiteralPath $PSScriptRoot
|
||||
|
||||
.SYNOPSIS
|
||||
This is a Powershell script to bootstrap a Cake build.
|
||||
$env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE = '1'
|
||||
$env:DOTNET_CLI_TELEMETRY_OPTOUT = '1'
|
||||
$env:DOTNET_NOLOGO = '1'
|
||||
|
||||
.DESCRIPTION
|
||||
This Powershell script will download NuGet if missing, restore NuGet tools (including Cake)
|
||||
and execute your Cake build script with the parameters you provide.
|
||||
dotnet tool restore
|
||||
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
|
||||
|
||||
.PARAMETER Script
|
||||
The build script to execute.
|
||||
.PARAMETER Target
|
||||
The build script target to run.
|
||||
.PARAMETER Configuration
|
||||
The build configuration to use.
|
||||
.PARAMETER Verbosity
|
||||
Specifies the amount of information to be displayed.
|
||||
.PARAMETER ShowDescription
|
||||
Shows description about tasks.
|
||||
.PARAMETER DryRun
|
||||
Performs a dry run.
|
||||
.PARAMETER Experimental
|
||||
Uses the nightly builds of the Roslyn script engine.
|
||||
.PARAMETER Mono
|
||||
Uses the Mono Compiler rather than the Roslyn script engine.
|
||||
.PARAMETER SkipToolPackageRestore
|
||||
Skips restoring of packages.
|
||||
.PARAMETER ScriptArgs
|
||||
Remaining arguments are added here.
|
||||
|
||||
.LINK
|
||||
https://cakebuild.net
|
||||
|
||||
#>
|
||||
|
||||
[CmdletBinding()]
|
||||
Param(
|
||||
[string]$Script = "build.cake",
|
||||
[string]$Target,
|
||||
[string]$Configuration,
|
||||
[ValidateSet("Quiet", "Minimal", "Normal", "Verbose", "Diagnostic")]
|
||||
[string]$Verbosity = "diagnostic",
|
||||
[switch]$ShowDescription,
|
||||
[Alias("WhatIf", "Noop")]
|
||||
[switch]$DryRun,
|
||||
[switch]$Experimental,
|
||||
[switch]$Mono,
|
||||
[switch]$SkipToolPackageRestore,
|
||||
[Parameter(Position=0,Mandatory=$false,ValueFromRemainingArguments=$true)]
|
||||
[string[]]$ScriptArgs
|
||||
)
|
||||
|
||||
[Reflection.Assembly]::LoadWithPartialName("System.Security") | Out-Null
|
||||
function MD5HashFile([string] $filePath)
|
||||
{
|
||||
if ([string]::IsNullOrEmpty($filePath) -or !(Test-Path $filePath -PathType Leaf))
|
||||
{
|
||||
return $null
|
||||
}
|
||||
|
||||
[System.IO.Stream] $file = $null;
|
||||
[System.Security.Cryptography.MD5] $md5 = $null;
|
||||
try
|
||||
{
|
||||
$md5 = [System.Security.Cryptography.MD5]::Create()
|
||||
$file = [System.IO.File]::OpenRead($filePath)
|
||||
return [System.BitConverter]::ToString($md5.ComputeHash($file))
|
||||
}
|
||||
finally
|
||||
{
|
||||
if ($file -ne $null)
|
||||
{
|
||||
$file.Dispose()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function GetProxyEnabledWebClient
|
||||
{
|
||||
$wc = New-Object System.Net.WebClient
|
||||
$proxy = [System.Net.WebRequest]::GetSystemWebProxy()
|
||||
$proxy.Credentials = [System.Net.CredentialCache]::DefaultCredentials
|
||||
$wc.Proxy = $proxy
|
||||
return $wc
|
||||
}
|
||||
|
||||
Write-Host "Preparing to run build script..."
|
||||
|
||||
if(!$PSScriptRoot){
|
||||
$PSScriptRoot = Split-Path $MyInvocation.MyCommand.Path -Parent
|
||||
}
|
||||
|
||||
$TOOLS_DIR = Join-Path $PSScriptRoot "tools"
|
||||
$ADDINS_DIR = Join-Path $TOOLS_DIR "Addins"
|
||||
$MODULES_DIR = Join-Path $TOOLS_DIR "Modules"
|
||||
$NUGET_EXE = Join-Path $TOOLS_DIR "nuget.exe"
|
||||
$CAKE_EXE = Join-Path $TOOLS_DIR "Cake/Cake.exe"
|
||||
$NUGET_URL = "https://dist.nuget.org/win-x86-commandline/latest/nuget.exe"
|
||||
$PACKAGES_CONFIG = Join-Path $TOOLS_DIR "packages.config"
|
||||
$PACKAGES_CONFIG_MD5 = Join-Path $TOOLS_DIR "packages.config.md5sum"
|
||||
$ADDINS_PACKAGES_CONFIG = Join-Path $ADDINS_DIR "packages.config"
|
||||
$MODULES_PACKAGES_CONFIG = Join-Path $MODULES_DIR "packages.config"
|
||||
|
||||
# Make sure tools folder exists
|
||||
if ((Test-Path $PSScriptRoot) -and !(Test-Path $TOOLS_DIR)) {
|
||||
Write-Verbose -Message "Creating tools directory..."
|
||||
New-Item -Path $TOOLS_DIR -Type directory | out-null
|
||||
}
|
||||
|
||||
# Make sure that packages.config exist.
|
||||
if (!(Test-Path $PACKAGES_CONFIG)) {
|
||||
Write-Verbose -Message "Downloading packages.config..."
|
||||
try {
|
||||
$wc = GetProxyEnabledWebClient
|
||||
$wc.DownloadFile("https://cakebuild.net/download/bootstrapper/packages", $PACKAGES_CONFIG) } catch {
|
||||
Throw "Could not download packages.config."
|
||||
}
|
||||
}
|
||||
|
||||
# Try find NuGet.exe in path if not exists
|
||||
if (!(Test-Path $NUGET_EXE)) {
|
||||
Write-Verbose -Message "Trying to find nuget.exe in PATH..."
|
||||
$existingPaths = $Env:Path -Split ';' | Where-Object { (![string]::IsNullOrEmpty($_)) -and (Test-Path $_ -PathType Container) }
|
||||
$NUGET_EXE_IN_PATH = Get-ChildItem -Path $existingPaths -Filter "nuget.exe" | Select -First 1
|
||||
if ($NUGET_EXE_IN_PATH -ne $null -and (Test-Path $NUGET_EXE_IN_PATH.FullName)) {
|
||||
Write-Verbose -Message "Found in PATH at $($NUGET_EXE_IN_PATH.FullName)."
|
||||
$NUGET_EXE = $NUGET_EXE_IN_PATH.FullName
|
||||
}
|
||||
}
|
||||
|
||||
# Try download NuGet.exe if not exists
|
||||
if (!(Test-Path $NUGET_EXE)) {
|
||||
Write-Verbose -Message "Downloading NuGet.exe..."
|
||||
try {
|
||||
$wc = GetProxyEnabledWebClient
|
||||
$wc.DownloadFile($NUGET_URL, $NUGET_EXE)
|
||||
} catch {
|
||||
Throw "Could not download NuGet.exe."
|
||||
}
|
||||
}
|
||||
|
||||
# Save nuget.exe path to environment to be available to child processed
|
||||
$ENV:NUGET_EXE = $NUGET_EXE
|
||||
|
||||
# Restore tools from NuGet?
|
||||
if(-Not $SkipToolPackageRestore.IsPresent) {
|
||||
Push-Location
|
||||
Set-Location $TOOLS_DIR
|
||||
|
||||
# Check for changes in packages.config and remove installed tools if true.
|
||||
[string] $md5Hash = MD5HashFile($PACKAGES_CONFIG)
|
||||
if((!(Test-Path $PACKAGES_CONFIG_MD5)) -Or
|
||||
($md5Hash -ne (Get-Content $PACKAGES_CONFIG_MD5 ))) {
|
||||
Write-Verbose -Message "Missing or changed package.config hash..."
|
||||
Remove-Item * -Recurse -Exclude packages.config,nuget.exe
|
||||
}
|
||||
|
||||
Write-Verbose -Message "Restoring tools from NuGet..."
|
||||
$NuGetOutput = Invoke-Expression "&`"$NUGET_EXE`" install -ExcludeVersion -OutputDirectory `"$TOOLS_DIR`""
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Throw "An error occured while restoring NuGet tools."
|
||||
}
|
||||
else
|
||||
{
|
||||
$md5Hash | Out-File $PACKAGES_CONFIG_MD5 -Encoding "ASCII"
|
||||
}
|
||||
Write-Verbose -Message ($NuGetOutput | out-string)
|
||||
|
||||
Pop-Location
|
||||
}
|
||||
|
||||
# Restore addins from NuGet
|
||||
if (Test-Path $ADDINS_PACKAGES_CONFIG) {
|
||||
Push-Location
|
||||
Set-Location $ADDINS_DIR
|
||||
|
||||
Write-Verbose -Message "Restoring addins from NuGet..."
|
||||
$NuGetOutput = Invoke-Expression "&`"$NUGET_EXE`" install -ExcludeVersion -OutputDirectory `"$ADDINS_DIR`""
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Throw "An error occured while restoring NuGet addins."
|
||||
}
|
||||
|
||||
Write-Verbose -Message ($NuGetOutput | out-string)
|
||||
|
||||
Pop-Location
|
||||
}
|
||||
|
||||
# Restore modules from NuGet
|
||||
if (Test-Path $MODULES_PACKAGES_CONFIG) {
|
||||
Push-Location
|
||||
Set-Location $MODULES_DIR
|
||||
|
||||
Write-Verbose -Message "Restoring modules from NuGet..."
|
||||
$NuGetOutput = Invoke-Expression "&`"$NUGET_EXE`" install -ExcludeVersion -OutputDirectory `"$MODULES_DIR`""
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Throw "An error occured while restoring NuGet modules."
|
||||
}
|
||||
|
||||
Write-Verbose -Message ($NuGetOutput | out-string)
|
||||
|
||||
Pop-Location
|
||||
}
|
||||
|
||||
# Make sure that Cake has been installed.
|
||||
if (!(Test-Path $CAKE_EXE)) {
|
||||
Throw "Could not find Cake.exe at $CAKE_EXE"
|
||||
}
|
||||
|
||||
# Build Cake arguments
|
||||
$cakeArguments = @("$Script");
|
||||
if ($Target) { $cakeArguments += "-target=$Target" }
|
||||
if ($Configuration) { $cakeArguments += "-configuration=$Configuration" }
|
||||
if ($Verbosity) { $cakeArguments += "-verbosity=$Verbosity" }
|
||||
if ($ShowDescription) { $cakeArguments += "-showdescription" }
|
||||
if ($DryRun) { $cakeArguments += "-dryrun" }
|
||||
if ($Experimental) { $cakeArguments += "-experimental" }
|
||||
if ($Mono) { $cakeArguments += "-mono" }
|
||||
$cakeArguments += $ScriptArgs
|
||||
|
||||
# Start Cake
|
||||
Write-Host "Running build script..."
|
||||
&$CAKE_EXE $cakeArguments --settings_skipverification=true
|
||||
exit $LASTEXITCODE
|
||||
dotnet cake @args
|
||||
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
|
||||
|
|
118
build.sh
118
build.sh
|
@ -3,118 +3,14 @@
|
|||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
# Licensed under the MIT License.
|
||||
|
||||
##########################################################################
|
||||
# This is the Cake bootstrapper script for Linux and OS X.
|
||||
# This file was downloaded from https://github.com/cake-build/resources
|
||||
# Feel free to change this file to fit your needs.
|
||||
##########################################################################
|
||||
set -euox pipefail
|
||||
|
||||
# Define directories.
|
||||
SCRIPT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||
TOOLS_DIR=$SCRIPT_DIR/tools
|
||||
ADDINS_DIR=$TOOLS_DIR/Addins
|
||||
MODULES_DIR=$TOOLS_DIR/Modules
|
||||
NUGET_EXE=$TOOLS_DIR/nuget.exe
|
||||
CAKE_EXE=$TOOLS_DIR/Cake/Cake.exe
|
||||
PACKAGES_CONFIG=$TOOLS_DIR/packages.config
|
||||
PACKAGES_CONFIG_MD5=$TOOLS_DIR/packages.config.md5sum
|
||||
ADDINS_PACKAGES_CONFIG=$ADDINS_DIR/packages.config
|
||||
MODULES_PACKAGES_CONFIG=$MODULES_DIR/packages.config
|
||||
cd "$(dirname "${BASH_SOURCE[0]}")"
|
||||
|
||||
# Define md5sum or md5 depending on Linux/OSX
|
||||
MD5_EXE=
|
||||
if [[ "$(uname -s)" == "Darwin" ]]; then
|
||||
MD5_EXE="md5 -r"
|
||||
else
|
||||
MD5_EXE="md5sum"
|
||||
fi
|
||||
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
|
||||
export DOTNET_CLI_TELEMETRY_OPTOUT=1
|
||||
export DOTNET_NOLOGO=1
|
||||
|
||||
# Define default arguments.
|
||||
SCRIPT="build.cake"
|
||||
CAKE_ARGUMENTS=()
|
||||
dotnet tool restore
|
||||
|
||||
# Parse arguments.
|
||||
for i in "$@"; do
|
||||
case $1 in
|
||||
-s|--script) SCRIPT="$2"; shift ;;
|
||||
--) shift; CAKE_ARGUMENTS+=("$@"); break ;;
|
||||
*) CAKE_ARGUMENTS+=("$1") ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
# Make sure the tools folder exist.
|
||||
if [ ! -d "$TOOLS_DIR" ]; then
|
||||
mkdir "$TOOLS_DIR"
|
||||
fi
|
||||
|
||||
# Make sure that packages.config exist.
|
||||
if [ ! -f "$TOOLS_DIR/packages.config" ]; then
|
||||
echo "Downloading packages.config..."
|
||||
curl -Lsfo "$TOOLS_DIR/packages.config" https://cakebuild.net/download/bootstrapper/packages
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "An error occured while downloading packages.config."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Download NuGet if it does not exist.
|
||||
if [ ! -f "$NUGET_EXE" ]; then
|
||||
echo "Downloading NuGet..."
|
||||
curl -Lsfo "$NUGET_EXE" https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "An error occured while downloading nuget.exe."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Restore tools from NuGet.
|
||||
pushd "$TOOLS_DIR" >/dev/null
|
||||
if [ ! -f "$PACKAGES_CONFIG_MD5" ] || [ "$( cat "$PACKAGES_CONFIG_MD5" | sed 's/\r$//' )" != "$( $MD5_EXE "$PACKAGES_CONFIG" | awk '{ print $1 }' )" ]; then
|
||||
find . -type d ! -name . | xargs rm -rf
|
||||
fi
|
||||
|
||||
mono "$NUGET_EXE" install -ExcludeVersion
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Could not restore NuGet tools."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
$MD5_EXE "$PACKAGES_CONFIG" | awk '{ print $1 }' >| "$PACKAGES_CONFIG_MD5"
|
||||
|
||||
popd >/dev/null
|
||||
|
||||
# Restore addins from NuGet.
|
||||
if [ -f "$ADDINS_PACKAGES_CONFIG" ]; then
|
||||
pushd "$ADDINS_DIR" >/dev/null
|
||||
|
||||
mono "$NUGET_EXE" install -ExcludeVersion
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Could not restore NuGet addins."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
popd >/dev/null
|
||||
fi
|
||||
|
||||
# Restore modules from NuGet.
|
||||
if [ -f "$MODULES_PACKAGES_CONFIG" ]; then
|
||||
pushd "$MODULES_DIR" >/dev/null
|
||||
|
||||
mono "$NUGET_EXE" install -ExcludeVersion
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Could not restore NuGet modules."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
popd >/dev/null
|
||||
fi
|
||||
|
||||
# Make sure that Cake has been installed.
|
||||
if [ ! -f "$CAKE_EXE" ]; then
|
||||
echo "Could not find Cake.exe at '$CAKE_EXE'."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Start Cake
|
||||
exec mono "$CAKE_EXE" $SCRIPT "${CAKE_ARGUMENTS[@]}" --settings_skipverification=true --verbosity=diagnostic
|
||||
dotnet cake "$@"
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
[NuGet]
|
||||
Source=https://api.nuget.org/v3/index.json
|
|
@ -83,12 +83,14 @@
|
|||
<!-- iOS -->
|
||||
<file src="$ios_dir$/Microsoft.AppCenter.dll" target="lib/Xamarin.iOS10" />
|
||||
<file src="$ios_dir$/Microsoft.AppCenter.xml" target="lib/Xamarin.iOS10" />
|
||||
<file src="$ios_dir$/Microsoft.AppCenter.iOS.Bindings.dll" target="lib/Xamarin.iOS10" />
|
||||
<file src="$ios_net6_dir$/Microsoft.AppCenter.dll" target="lib/net6.0-ios9.0" />
|
||||
<file src="$ios_net6_dir$/Microsoft.AppCenter.xml" target="lib/net6.0-ios9.0" />
|
||||
|
||||
<!-- macOS -->
|
||||
<file src="$macos_dir$/Microsoft.AppCenter.dll" target="lib/Xamarin.Mac" />
|
||||
<file src="$macos_dir$/Microsoft.AppCenter.xml" target="lib/Xamarin.Mac" />
|
||||
<file src="$macos_dir$/Microsoft.AppCenter.MacOS.Bindings.dll" target="lib/Xamarin.Mac" />
|
||||
<file src="$macos_net6_dir$/Microsoft.AppCenter.dll" target="lib/net6.0-macos10.10" />
|
||||
<file src="$macos_net6_dir$/Microsoft.AppCenter.xml" target="lib/net6.0-macos10.10" />
|
||||
|
||||
<!-- UWP -->
|
||||
<file src="$uwp_dir$/Microsoft.AppCenter.dll" target="lib/uap10.0" />
|
||||
|
@ -105,11 +107,11 @@
|
|||
<!-- WindowsDesktop (WPF and WinForms) for .NET Core -->
|
||||
<file src="$windows_desktop_netcore_dir$/Microsoft.AppCenter.dll" target="lib/netcoreapp3.1" />
|
||||
<file src="$windows_desktop_netcore_dir$/Microsoft.AppCenter.xml" target="lib/netcoreapp3.1" />
|
||||
<file src="$windows_desktop_net_5_windows_dir$/Microsoft.AppCenter.dll" target="lib/net5.0-windows7.0" />
|
||||
<file src="$windows_desktop_net_5_windows_dir$/Microsoft.AppCenter.xml" target="lib/net5.0-windows7.0" />
|
||||
<file src="$windows_desktop_net5_dir$/Microsoft.AppCenter.dll" target="lib/net5.0-windows7.0" />
|
||||
<file src="$windows_desktop_net5_dir$/Microsoft.AppCenter.xml" target="lib/net5.0-windows7.0" />
|
||||
|
||||
<!-- WinUI-->
|
||||
<file src="$windows_desktop_net_5_windows_winui_dir$/Microsoft.AppCenter.dll" target="lib/net5.0-windows10.0.17763.0" />
|
||||
<file src="$windows_desktop_net_5_windows_winui_dir$/Microsoft.AppCenter.xml" target="lib/net5.0-windows10.0.17763.0" />
|
||||
<file src="$windows_desktop_net5_winui_dir$/Microsoft.AppCenter.dll" target="lib/net5.0-windows10.0.17763.0" />
|
||||
<file src="$windows_desktop_net5_winui_dir$/Microsoft.AppCenter.xml" target="lib/net5.0-windows10.0.17763.0" />
|
||||
</files>
|
||||
</package>
|
||||
|
|
|
@ -33,12 +33,14 @@
|
|||
<!-- iOS -->
|
||||
<file src="$ios_dir$/Microsoft.AppCenter.Analytics.dll" target="lib/Xamarin.iOS10" />
|
||||
<file src="$ios_dir$/Microsoft.AppCenter.Analytics.xml" target="lib/Xamarin.iOS10" />
|
||||
<file src="$ios_dir$/Microsoft.AppCenter.Analytics.iOS.Bindings.dll" target="lib/Xamarin.iOS10" />
|
||||
<file src="$ios_net6_dir$/Microsoft.AppCenter.Analytics.dll" target="lib/net6.0-ios9.0" />
|
||||
<file src="$ios_net6_dir$/Microsoft.AppCenter.Analytics.xml" target="lib/net6.0-ios9.0" />
|
||||
|
||||
<!-- macOS -->
|
||||
<file src="$macos_dir$/Microsoft.AppCenter.Analytics.dll" target="lib/Xamarin.Mac" />
|
||||
<file src="$macos_dir$/Microsoft.AppCenter.Analytics.xml" target="lib/Xamarin.Mac" />
|
||||
<file src="$macos_dir$/Microsoft.AppCenter.Analytics.MacOS.Bindings.dll" target="lib/Xamarin.Mac" />
|
||||
<file src="$macos_net6_dir$/Microsoft.AppCenter.Analytics.dll" target="lib/net6.0-macos10.10" />
|
||||
<file src="$macos_net6_dir$/Microsoft.AppCenter.Analytics.xml" target="lib/net6.0-macos10.10" />
|
||||
|
||||
<!-- UWP -->
|
||||
<file src="$uwp_dir$/Microsoft.AppCenter.Analytics.dll" target="lib/uap10.0" />
|
||||
|
@ -55,11 +57,11 @@
|
|||
<!-- WindowsDesktop (WPF and WinForms) for .NET Core -->
|
||||
<file src="$windows_desktop_netcore_dir$/Microsoft.AppCenter.Analytics.dll" target="lib/netcoreapp3.1" />
|
||||
<file src="$windows_desktop_netcore_dir$/Microsoft.AppCenter.Analytics.xml" target="lib/netcoreapp3.1" />
|
||||
<file src="$windows_desktop_net_5_windows_dir$/Microsoft.AppCenter.Analytics.dll" target="lib/net5.0-windows7.0" />
|
||||
<file src="$windows_desktop_net_5_windows_dir$/Microsoft.AppCenter.Analytics.xml" target="lib/net5.0-windows7.0" />
|
||||
<file src="$windows_desktop_net5_dir$/Microsoft.AppCenter.Analytics.dll" target="lib/net5.0-windows7.0" />
|
||||
<file src="$windows_desktop_net5_dir$/Microsoft.AppCenter.Analytics.xml" target="lib/net5.0-windows7.0" />
|
||||
|
||||
<!-- WinUI -->
|
||||
<file src="$windows_desktop_net_5_windows_winui_dir$/Microsoft.AppCenter.Analytics.dll" target="lib/net5.0-windows10.0.17763.0" />
|
||||
<file src="$windows_desktop_net_5_windows_winui_dir$/Microsoft.AppCenter.Analytics.xml" target="lib/net5.0-windows10.0.17763.0" />
|
||||
<file src="$windows_desktop_net5_winui_dir$/Microsoft.AppCenter.Analytics.dll" target="lib/net5.0-windows10.0.17763.0" />
|
||||
<file src="$windows_desktop_net5_winui_dir$/Microsoft.AppCenter.Analytics.xml" target="lib/net5.0-windows10.0.17763.0" />
|
||||
</files>
|
||||
</package>
|
||||
|
|
|
@ -39,12 +39,14 @@
|
|||
<!-- iOS -->
|
||||
<file src="$ios_dir$/Microsoft.AppCenter.Crashes.dll" target="lib/Xamarin.iOS10" />
|
||||
<file src="$ios_dir$/Microsoft.AppCenter.Crashes.xml" target="lib/Xamarin.iOS10" />
|
||||
<file src="$ios_dir$/Microsoft.AppCenter.Crashes.iOS.Bindings.dll" target="lib/Xamarin.iOS10" />
|
||||
<file src="$ios_net6_dir$/Microsoft.AppCenter.Crashes.dll" target="lib/net6.0-ios9.0" />
|
||||
<file src="$ios_net6_dir$/Microsoft.AppCenter.Crashes.xml" target="lib/net6.0-ios9.0" />
|
||||
|
||||
<!-- macOS -->
|
||||
<file src="$macos_dir$/Microsoft.AppCenter.Crashes.dll" target="lib/Xamarin.Mac" />
|
||||
<file src="$macos_dir$/Microsoft.AppCenter.Crashes.xml" target="lib/Xamarin.Mac" />
|
||||
<file src="$macos_dir$/Microsoft.AppCenter.Crashes.MacOS.Bindings.dll" target="lib/Xamarin.Mac" />
|
||||
<file src="$macos_net6_dir$/Microsoft.AppCenter.Crashes.dll" target="lib/net6.0-macos10.10" />
|
||||
<file src="$macos_net6_dir$/Microsoft.AppCenter.Crashes.xml" target="lib/net6.0-macos10.10" />
|
||||
|
||||
<!-- UWP -->
|
||||
<file src="$uwp_dir$/Microsoft.AppCenter.Crashes.dll" target="lib/uap10.0" />
|
||||
|
@ -61,11 +63,11 @@
|
|||
<!-- WindowsDesktop (WPF and WinForms) for .NET Core -->
|
||||
<file src="$windows_desktop_netcore_dir$/Microsoft.AppCenter.Crashes.dll" target="lib/netcoreapp3.1" />
|
||||
<file src="$windows_desktop_netcore_dir$/Microsoft.AppCenter.Crashes.xml" target="lib/netcoreapp3.1" />
|
||||
<file src="$windows_desktop_net_5_windows_dir$/Microsoft.AppCenter.Crashes.dll" target="lib/net5.0-windows7.0" />
|
||||
<file src="$windows_desktop_net_5_windows_dir$/Microsoft.AppCenter.Crashes.xml" target="lib/net5.0-windows7.0" />
|
||||
<file src="$windows_desktop_net5_dir$/Microsoft.AppCenter.Crashes.dll" target="lib/net5.0-windows7.0" />
|
||||
<file src="$windows_desktop_net5_dir$/Microsoft.AppCenter.Crashes.xml" target="lib/net5.0-windows7.0" />
|
||||
|
||||
<!-- WinUI -->
|
||||
<file src="$windows_desktop_net_5_windows_winui_dir$/Microsoft.AppCenter.Crashes.dll" target="lib/net5.0-windows10.0.17763.0" />
|
||||
<file src="$windows_desktop_net_5_windows_winui_dir$/Microsoft.AppCenter.Crashes.xml" target="lib/net5.0-windows10.0.17763.0" />
|
||||
<file src="$windows_desktop_net5_winui_dir$/Microsoft.AppCenter.Crashes.dll" target="lib/net5.0-windows10.0.17763.0" />
|
||||
<file src="$windows_desktop_net5_winui_dir$/Microsoft.AppCenter.Crashes.xml" target="lib/net5.0-windows10.0.17763.0" />
|
||||
</files>
|
||||
</package>
|
||||
|
|
Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше
Загрузка…
Ссылка в новой задаче