Giter VIP home page Giter VIP logo

hockeysdk-xamarin's People

Contributors

colbylwilliams avatar dangmh avatar follesoe avatar guperrot avatar lumaxis avatar matkovivan avatar matthiaswenz avatar polyakrecords avatar rdavisau avatar redth avatar sharpmobilecode avatar shawndyas avatar v-momoin avatar

Stargazers

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

Watchers

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

hockeysdk-xamarin's Issues

Xamarin Forms Android Release Build fails with 5.0.0

Hello,

today I've updated Xamarin Forms to 2.4.0 and I could still build our project in release mode (With HockeyAppSDK 4.1.5)

Updating to HockeyAppSDK 5.0.0 our app no longer builds in release mode (it does in debug mode though) with following warnings and error:

PROGUARD : warning : net.hockeyapp.android.utils.PermissionsUtil: can't find referenced method 'boolean canRequestPackageInstalls()' in library class android.content.pm.PackageManager
PROGUARD : warning : net.hockeyapp.android.utils.Util: can't find referenced method 'Notification$Builder(android.content.Context,java.lang.String)' in library class android.app.Notification$Builder
PROGUARD : warning : net.hockeyapp.android.utils.Util: can't find referenced class android.app.NotificationChannel
PROGUARD : warning : net.hockeyapp.android.utils.Util: can't find referenced class android.app.NotificationChannel
PROGUARD : warning : net.hockeyapp.android.utils.Util: can't find referenced method 'void createNotificationChannel(android.app.NotificationChannel)' in library class android.app.NotificationManager
PROGUARD : warning : net.hockeyapp.android.utils.Util: can't find referenced class android.app.NotificationChannel
PROGUARD : warning : there were 3 unresolved references to classes or interfaces.
PROGUARD : warning : there were 3 unresolved references to library class members.
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(1929,3): error MSB6006: "java" exited with code 1.

Visual Studio

Visual Studio Community 2017 for Mac
Version 7.1.5 (build 2)
Installation UUID: xxx
Runtime:
	Mono 5.2.0.224 (d15-3/14f2c81) (64-bit)
	GTK+ 2.24.23 (Raleigh theme)

	Package version: 502000224

NuGet
Version: 4.3.0.2418

.NET Core
Runtime: /usr/local/share/dotnet/dotnet
Runtime Versions:
	1.1.1
	1.0.4
SDK: /usr/local/share/dotnet/sdk/1.0.3/Sdks
SDK Version: 1.0.3
MSBuild SDKs: /Library/Frameworks/Mono.framework/Versions/5.2.0/lib/mono/msbuild/15.0/bin/Sdks

Xamarin.Profiler
'/Applications/Xamarin Profiler.app' not found

Apple Developer Tools
Xcode 9.0 (13247)
Build 9A235

Xamarin.Mac
Version: 3.6.3.3 (Visual Studio Community)

Xamarin.Android
Version: 7.4.5.1 (Visual Studio Community)
Android SDK: /Users/rein/Library/Developer/Xamarin/android-sdk-macosx
	Supported Android versions:
		4.4 (API level 19)
		5.0 (API level 21)
		5.1 (API level 22)
		6.0 (API level 23)
		7.0 (API level 24)
		7.1 (API level 25)

SDK Tools Version: 25.2.5
SDK Platform Tools Version: 25.0.1
SDK Build Tools Version: 25.0.1

Java SDK: /usr
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

Android Designer EPL code available here:
https://github.com/xamarin/AndroidDesigner.EPL

Xamarin Inspector
Version: 1.3.1
Hash: cbc48dd
Branch: 1.3-release
Build date: Thu, 21 Sep 2017 19:52:53 GMT
Client compatibility: 1

Xamarin.iOS
Version: 11.0.0.0 (Visual Studio Community)
Hash: 152b654a
Branch: xcode9
Build date: 2017-09-15 02:25:56-0400

Build Information
Release ID: 701050002
Git revision: 7afedcaef8e7542e70e3cf8f9bdb26938b8c0876
Build date: 2017-09-15 08:39:58-04
Xamarin addins: 3262aadf811a18c12eac6742532d052b0139a808
Build lane: monodevelop-lion-d15-3-xcode9

Operating System
Mac OS X 10.12.6
Darwin 16.7.0 Darwin Kernel Version 16.7.0
    Thu Jun 15 17:36:27 PDT 2017

.csproj configuration

  <Import Project="..\packages\Xamarin.Forms.2.4.0.280\build\netstandard1.0\Xamarin.Forms.props" Condition="Exists('..\packages\Xamarin.Forms.2.4.0.280\build\netstandard1.0\Xamarin.Forms.props')" />
  <Import Project="..\packages\Xamarin.Build.Download.0.4.7\build\Xamarin.Build.Download.props" Condition="Exists('..\packages\Xamarin.Build.Download.0.4.7\build\Xamarin.Build.Download.props')" />
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProjectTypeGuids></ProjectTypeGuids>
    <ProjectGuid></ProjectGuid>
    <OutputType>Library</OutputType>
    <RootNamespace>B2B.Droid</RootNamespace>
    <MonoAndroidAssetsPrefix>Assets</MonoAndroidAssetsPrefix>
    <MonoAndroidResourcePrefix>Resources</MonoAndroidResourcePrefix>
    <AndroidManifest>Properties\AndroidManifest.xml</AndroidManifest>
    <AndroidResgenClass>Resource</AndroidResgenClass>
    <AndroidResgenFile>Resources\Resource.designer.cs</AndroidResgenFile>
    <AndroidApplication>True</AndroidApplication>
    <AndroidUseLatestPlatformSdk>true</AndroidUseLatestPlatformSdk>
    <AssemblyName>B2B.Droid</AssemblyName>
    <TargetFrameworkVersion>v7.1</TargetFrameworkVersion>
    <ReleaseVersion>1.2</ReleaseVersion>
    <AndroidTlsProvider></AndroidTlsProvider>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>bin\Debug</OutputPath>
    <DefineConstants>DEBUG;</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <AndroidLinkMode>None</AndroidLinkMode>
    <ConsolePause>false</ConsolePause>
    <RunCodeAnalysis>false</RunCodeAnalysis>
    <AndroidKeyStore></AndroidKeyStore>
    <AndroidTlsProvider>btls</AndroidTlsProvider>
    <AndroidEnableSGenConcurrent>true</AndroidEnableSGenConcurrent>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <DebugSymbols>false</DebugSymbols>
    <DebugType></DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\Release</OutputPath>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <AndroidUseSharedRuntime>false</AndroidUseSharedRuntime>
    <ConsolePause>false</ConsolePause>
    <RunCodeAnalysis>true</RunCodeAnalysis>
    <AndroidSupportedAbis>armeabi-v7a;x86;armeabi</AndroidSupportedAbis>
    <AndroidLinkMode>Full</AndroidLinkMode>
    <EnableProguard>true</EnableProguard>
    <AndroidEnableSGenConcurrent>true</AndroidEnableSGenConcurrent>
    <AndroidTlsProvider>btls</AndroidTlsProvider>
    <AndroidLinkSkip>Xamarin.Android.Support.v7.AppCompat;Xamarin.Android.Support.v4</AndroidLinkSkip>
    <AotAssemblies>True</AotAssemblies>
    <EnableLLVM>True</EnableLLVM>
    <AndroidAotAdditionalArguments>no-write-symbols,nodebug</AndroidAotAdditionalArguments>
    <EmbedAssembliesIntoApk>True</EmbedAssembliesIntoApk>
  </PropertyGroup>

Downgrading to 4.1.5 'solves' the issue

Logging events doesn't seem to work at all

I have following configured in my app yet nothing is showing in the backend

Droid/MainActivity.cs

MetricsManager.Register(this, Application, HOCKEYAPP_APPID);
MetricsManager.EnableUserMetrics();

Then I log events normally in Android code:
HockeyApp.Android.Metrics.MetricsManager.TrackEvent(eventName);

Migrating from Xamarin.Insights: Missing Features "Report & Identify"

Hi!

As we understood, Xamarin plans to shut down Xamarin Insights and ask its devs to move to HockeyApp.

Basically, I do not have a problem with that.
The only thing is, that it still is lacking two features which are very important to us:

  1. Insights.Report(...) allows us to report exceptions which did NOT cause the App to crash. (But they might still be interesting to us! This cannot be compensated with "Track" as we would loose the stacktrace, etc. etc.)

  2. Insights.Identify(...) allows us to add general metadata to a current session.
    That way we can better identify problems and/or customers.
    And we do NOT have to add that information in each call - it is just added out of the box.

Once those two features are available, I can think of changing the platform, but until then HockeyApp is useless as metrics-provider to us. :-|

Are there any plans to implement those?

Don't build on iOS

I followed your tutorial to install hockeyapp for iOS but I got this error:

Failed to resolve "System.Void ObjCRuntime.UserDelegateTypeAttribute::.ctor(System.Type)" reference from "Xamarin.iOS, Version=0.0.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065"

My code in my app delegatte is:

public override bool FinishedLaunching(UIApplication app, NSDictionary options)
        {
            //Get the shared instance
            var manager = BITHockeyManager.SharedHockeyManager;

            //Configure it to use our APP_ID
            manager.Configure("my_key");

            manager.LogLevel = BITLogLevel.Debug;

            //Start the manager
            manager.StartManager();

            //Authenticate (there are other authentication options)
            manager.Authenticator.AuthenticateInstallation();

            global::Xamarin.Forms.Forms.Init();

            ZXing.Net.Mobile.Forms.iOS.Platform.Init();

            LoadApplication(new App());    

            return base.FinishedLaunching(app, options);
        }

I uninstalled the library and run my code again to see if the problem was in my project but it's running correctly until I had the HockeyApp code.

I saw this thread talking about the problem: https://support.hockeyapp.net/discussions/problems/62772-ios-build-error-on-xamarinforms
But there is no solution.

Have you an idea ?

Native Linker failures in Xamarin.iOS

Maybe I missed this in the docs somewhere but when I added the SDK to my (previously created) iOS Xamarin.Forms add I was getting linker failures on some standard library bits.

I had to add the following as additional mtouch arguments:
-cxx -gcc_flags "-lc++"

Am I missing something else? Did I forget a step somewhere?

35mb library for iOS seems too big

For Xamarin.Forms app built in Release mode the library takes almost half the app size. Doesn't seem too good library for mobile development.

hockeysdk iosbindings_35mb

Send crash report in iOS

Hi, I include this component in iOS project and code in appdelegate

var manager = BITHockeyManager.SharedHockeyManager;
manager.Configure("*MyAppID*");
manager.CrashManager.CrashManagerStatus = BITCrashManagerStatus.AutoSend;
manager.StartManager();

but reports about my throw new Exception("message") not send to service; help me please;

Exception setting up the HockeySDK

I am getting the following exception on iOS 10.3 and Xamarin Forms 2.3.4.

[HockeySDK] -[BITCrashManager startManagerInSdkEnvironment:]_block_invoke/1265 [HockeySDK] ERROR: Exception handler could not be set. Make sure there is no other exception handler set up!

I have the following code in the AppDelegate OnFinishedLaunching. Am I missing something?

var manager = HockeyApp.iOS.BITHockeyManager.SharedHockeyManager;
manager.Configure(Data.SettingsAccess.Default.AccessSettings.HockeyAppId);
manager.DisableMetricsManager = true;
manager.CrashManager.CrashManagerStatus = HockeyApp.iOS.BITCrashManagerStatus.AutoSend;

		manager.StartManager();

4.1.5

{System.TypeInitializationException: The type initializer for 'Attribute' threw an exception. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.MissingFieldException: Field 'HockeyApp.Resource/String.hockeyapp_feedback_attachment_added' not found.
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00032] in <3fd174ff54b146228c505f23cf75ce71>:0
--- End of inner exception stack trace ---
at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x0004b] in <3fd174ff54b146228c505f23cf75ce71>:0
at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <3fd174ff54b146228c505f23cf75ce71>:0
at Android.Runtime.ResourceIdManager.UpdateIdValues () [0x000b4] in :0
at Xamarin.Forms.Platform.Android.Resource+Attribute..cctor () [0x00000] in C:\BuildAgent\work\ca3766cfc22354a1\Xamarin.Forms.Platform.Android\Cells\EntryCellView.cs:62
--- End of inner exception stack trace ---
at (wrapper managed-to-native) System.Object:__icall_wrapper_mono_generic_class_init (intptr)
at Xamarin.Forms.Platform.Android.AppCompat.NavigationPageRenderer.ActionBarHeight () [0x00000] in C:\BuildAgent\work\ca3766cfc22354a1\Xamarin.Forms.Platform.Android\Renderers\StepperRenderer.cs:80
at Xamarin.Forms.Platform.Android.AppCompat.NavigationPageRenderer.OnLayout (System.Boolean changed, System.Int32 l, System.Int32 t, System.Int32 r, System.Int32 b) [0x0001a] in :0
at Xamarin.Forms.Platform.Android.FormsViewGroup.n_OnLayout_ZIIII (System.IntPtr jnienv, System.IntPtr native__this, System.Boolean p0, System.Int32 p1, System.Int32 p2, System.Int32 p3, System.Int32 p4) [0x00008] in C:\BuildAgent\work\ca3766cfc22354a1\Xamarin.Forms.Platform.Android.FormsViewGroup\obj\Release\generated\src\Xamarin.Forms.Platform.Android.FormsViewGroup.cs:198
at (wrapper dynamic-method) System.Object:587a8409-4080-4cba-8864-5fba5e5bf78b (intptr,intptr,bool,int,int,int,int)}

Register CrashManager with CrashManagerListener doesn't work

A customer tried to register the CrashManager with a CrashManagerListener instance in order to add user info such as contact, user ID, and email to the crash report. However, this doesn't seem to work. The crash reports are sent without containing any metadata.

My guess is that setting the listener is not properly supported at the moment.

Build errors

I cloned the repo and tried to build but I am seeing the following:

build.cake (87,14): Type Cake.Core.CakeTaskBuilder<Cake.Core.ActionTask>' does not contain a definition forIsDependenOn' and no extension method IsDependenOn' of typeCake.Core.CakeTaskBuilder<Cake.Core.ActionTask>' could be found. Are you missing an assembly reference?
Error: Cake.Core.CakeException: An error occured while executing build script.
at Cake.Scripting.Mono.MonoScriptSession.Execute (Cake.Core.Scripting.Script script) <0x363a368 + 0x000f3> in :0
at Cake.Core.Scripting.ScriptRunner.Run (IScriptHost host, Cake.Core.IO.FilePath scriptPath, IDictionary2 arguments) <0x29922c0 + 0x00879> in <filename unknown>:0 at Cake.Commands.BuildCommand.Execute (Cake.CakeOptions options) <0x2992228 + 0x0003f> in <filename unknown>:0 at Cake.CakeApplication.Run (IEnumerable1 args) <0x298d0f8 + 0x00082> in :0

Migrating from Xamarin.Insights: Do not show "should I upload crashreport" messages

Hi!

I just read in your docs, that whenever the app crashes and starts again, HockeyApp detects that there was a crash and in turn prompts the user a dialog, asking if it would be ok to send the crash reports to HockeyApps servers.

This dialog is currently not exisitng in Xamarin.Insights and we really cannot live with it.
That is because we are an ISV and in our business contract, there is a paragraph stating that in order to be able to for us comply with the support contract, they agree that all exceptions of their devices are being sent to our monitoring system - which is Xamarin.Insights until today.

Now if the end-users - which are not techies by the way - see this dialog, the propbility that thay do NOT accept it are quite high and we cannot see that something is going wrong.

So please can you make that dialog optional? That is be really really important to us.

Strange problem with TabbedPage

Hey,
I have a strange problem when I used a TabbedPage with two childs.

The application is lauching and closing directly with no error message .

   class HomePage : TabbedPage
    {
        public HomePage()
        {

            var cardsPages = new NavigationPage(new CardsPageView());
            cardsPages.Title = "Cartes";
         var offerPages = new NavigationPage(new SettingsPageView());
         offerPages.Title = "Promo";

         Children.Add(cardsPages);
         Children.Add(offerPages);
        }
    }

I tried my two pages alone (one time with the child cardsPage and the other with the child offerPages), and it seems to be working. Did you ever heard about a problem like that ?

Strong name signing for HockeySDK.AndroidBindings

Hi!

Can you please sign your assemblies in the next update to the nuget packages?

CSC : warning CS8002: Referenced assembly 'HockeySDK.AndroidBindings, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' does not have a strong name.

We use strong name signing for our projects and it is a bit of a cascading requirement. In the meantime, I will use the strong name signer tool (https://brutaldev.com/post/net-assembly-strong-name-signer) to workaround the issue.

Thanks
Callan.

Crash report is not send to Hockeyapp [4.1.0-beta3, iOS]

CrashManager is initialized by following code:
__hockeyManager = BITHockeyManager.SharedHockeyManager;
_hockeyManager.Configure(HOCKEYAPP_APPID);
_hockeyManager.DebugLogEnabled = true;
_hockeyManager.CrashManager.CrashManagerStatus = BITCrashManagerStatus.AutoSend;
hockeyManager.StartManager();

Crash is initiated by:
throw new Exception("TEST")

After app restarted the following messages can be seen at output:
_[BITHockeyManager startManager]/242 INFO: Starting HockeyManager
[BITHockeyManager startManager]/248 INFO: Start CrashManager
[BITPersistence createDirectoryStructureIfNeeded]/226 INFO: Exclude %SKIPPED% from backup
__31-[BITCrashManager startManager]_block_invoke/1210 INFO: Exception handler successfully initialized.
[BITHockeyManager startManager]/281 INFO: Start FeedbackManager
[BITHockeyManager startManager]/295 INFO: Start Authenticator
[BITHockeyManager startManager]/320 INFO: Start MetricsManager
[BITSender sendSavedData]/76 INFO: Create new sender thread. Current count is 1
[BITSender sendData:withFilePath:]/96 INFO: Close sender thread due empty package. Current count is 0
[BITCrashManager invokeDelayedProcessing]/1004 INFO: Start delayed CrashManager processing
[BITCrashManager hasPendingCrashReport]/960 INFO: 1 pending crash reports found.
[BITCrashManager sendNextCrashReport]/1510 INFO: Sending crash reports: %SKIPPED%
[BITCrashManager sendCrashReportWithFilename:xml:attachment:]/1719 INFO: Sending crash reports started.
__81-[BITCrashManager processUploadResultWithFilename:responseData:statusCode:error:]_block_invoke/1623 INFO: Received API response: {
delay = 6000;
id = 8144826451;
status = "-80";
}
__32-[BITPersistence persistBundle:]block_invoke/59 INFO: Wrote bundle to %SKIPPED%
[BITSender sendSavedData]/76 INFO: Create new sender thread. Current count is 1
[BITSender sendData:withFilePath:]/96 INFO: Close sender thread due empty package. Current count is 0

LoginManager.Register without AppID in manifest fails

The GettingStarted.md file should include a note about adding the APP ID to the manifest. This can be done by including the assembly level attribute:

[assembly: MetaData (“net.hockeyapp.android.appIdentifier”, Value=Your-Api-Key)]

Some of the *Manager.Register overloads accept an APP ID in them, however it seems it's not obvious if LoginManager.Register does or not.

Can you put 4.1.1 on Nuget pre-release?

Just wondering if you could be so kind as to put something up from the 4.1.1 release branch on Nuget as a pre-release package.

I've no need for any crash reporting, I've got the CrashManager disabled, but even then its crashing on both iOS and Android with unhandled exceptions.

Hoping that the fix mentioned here : #14
will sort it out. 👍

Manual Feedback sending stopped working

Since few days, programmatic feedback cannot be sent from Android. It worked for months, and our code has not changed in the meantime.

Error: "Message couldn't be posted. Please check your input values and your connection, then try again."

HockeySDK for iOS 4.1.0: Link all assemblies does not work

var manager = BITHockeyManager.SharedHockeyManager;

SharedHockeyManager is always null in this case. MTouch argument --linkskip HockeySDK doesn't fix this issue.

This works nicely with the older version 3.8.6.0 and --linkskip HockeyApp.iOS.

HockeyApp.Setup.EnableCustomCrashReporting (() => { var manager = BITHockeyManager.SharedHockeyManager; });

Broken Documentation Links

Both of the documentation links seem to be broken for iOS and Android.

Received a "Page Not Found" - Have the locations for the docs moved elsewhere I took a look around and didn't notice them anywhere else on the site. I can update the links if need-be.

image

feedback closed event

Not a bug a suggestion. Extend the feedback listener to know when the feedback window has closed.

SetCrashCallbacks - Why is it disabled?

May I ask why SetCrashCallbacks is disabled in the Xamarin-SDK?

I do have a workaround, where I set my own uncaught-exception handler, but I'd prefer to have hockey do the listening & checking, and just have it run some of my custom-code upon crash. Also, hockey notices that someone else is listening and puts out a warning message. So yeah, I'd like a nicer solution.

If setCrashCallbacks if off the table, any suggestions/best practice what to do instead?

Thanks!
-H

Ui localization

How to localize the hockeyapp ui? I couldn't even find the localemanager which is implemented to the android/java version. Is there another way to accomplish localization?

MetricsManager.TrackEvent() with custom properties throws error

All samples and documentation have this gist:

HockeyApp.MetricsManager.TrackEvent(
  "Custom Event",
  new Dictionary<string, string> { { "property", "value" } },
  new Dictionary<string, double> { { "time", 1.0 } }
)

but only these two methods are avialavle:

[Export("trackEventWithName:")]
public virtual void TrackEvent(string eventName);

[Export("trackEventWithName:properties:measurements:")]
public virtual void TrackEvent(string eventName, NSDictionary properties, NSDictionary measurements);

I'm trying to call it like this:

BITHockeyManager.SharedHockeyManager.MetricsManager.TrackEvent(
    "EventNAme",
     NSDictionary.FromObjectAndKey(new NSString("Property"), new NSString("Value")),
     NSDictionary.FromObjectAndKey(new NSString("LaunchTimeInMs"), new NSNumber(stopwatch.ElapsedMilliseconds)));

And I get the following error:

-[BITData serializeToDictionary]/17 [HockeySDK] Some of the telemetry data was not NSJSONSerialization compatible and could not be serialized!

Difference observed between Mobile Center and HockeyApp symbolication

I recently started incorporating HockeySDK.Xamarin 4.1.3 into our Xamarin.iOS app. The crash logs appear to be missing the C# stack trace, and I only see the native one. I tried out Mobile Center, and the crash logs were properly symbolicated and contained the C# stack. Screenshots of the same crash observed on HockeyApp and Mobile Center are attached.

Mentioned this briefly to @anlinde through Mobile Center chat, but wanted to make sure it got documented here.

hockeyapp
mobilecenter

crash on iPhone 3GS

If I only put the line "var manager = BITHockeyManager.SharedHockeyManager;" in AppDelegate.FinishedLaunching the app continues to shut down after a few seconds each time I start it. If I comment it out, the app starts without problems.

App rejected because of NSPhotoLibraryUsageDescription

Reading around, I've found lots of references to "update to SDK 4.1.1" and the Feedback feature is gone.

But I just got this now, and I'm 100% sure we are using 4.1.1.

Missing Info.plist key - This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaining to the user how the app uses this data.

Anyone has any idea how this could be happening?

HockeyApp SDK prevents exceptions from being show in XS/VSMac

See bug 51733 for reference: https://bugzilla.xamarin.com/show_bug.cgi?id=51733#c5

If you create a new iOS template, add hockey app SDK and add the following code in the AppDelegate's FinishedLaunching:

var manager = BITHockeyManager.SharedHockeyManager;
manager.Configure("37d9232914b841f387ec1f4ff35e9f52");
manager.StartManager();
manager.Authenticator.AuthenticateInstallation();

var storyboard = UIStoryboard.FromName ("Main", null);
var vc = storyboard.InstantiateViewController ("SomeViewControllerWithNoStoryboardID");

The exception will be captured by HockeyApp and not shown in the IDE.

Removing the SharedHockeyManager initialization code gets us back to the normal behavior, the exception is shown in the IDE.

Crash at startup

There might be an issue in our Xamarin Bindings.

bitstadium/HockeySDK-iOS#398

Stacktrace:

**Application Specific Information:**
*** Terminating app due to uncaught exception 'System.NullReferenceException', reason: 'System.NullReferenceException: Object reference not set to an instance of an object'

Xamarin Exception Stack:
  at (wrapper managed-to-native) UIKit.UIApplication:UIApplicationMain (int,string[],intptr,intptr)
  at UIKit.UIApplication.Main (System.String[] args, System.String principalClassName, System.String delegateClassName) <0x10051bee4 + 0x0009b> in <d9a64a30a9e54cff99bd5519750ca6b8#3f818f10c94778d1035e7826de6247d6>:0 
  at psea.ios.Application.Main (System.String[] args) <0x10043b09c + 0x0001b> in <39f820e7eeb24192afee9e82bd43214b#3f818f10c94778d1035e7826de6247d6>:0

Last Exception Backtrace:
0   CoreFoundation                       0x00000001881a91b8 __exceptionPreprocess + 124
1   libobjc.A.dylib                      0x0000000186be055c objc_exception_throw + 52
2   CoreFoundation                       0x00000001881a8e80 -[NSException raise] + 8

**3   mobileios                            0x00000001013e8bb8 **wrapper_managed_to_native_Xamarin_ObjCRuntime_Messaging_void_objc_msgSend_intptr_intptr (<unknown>:1)
4   mobileios                            0x00000001013d8440 HockeySDK_iOSBindings_HockeyApp_iOS_BITHockeyManager_ConvertToNsExceptionAndAbort_object + 280
5   mobileios                            0x00000001013d8574 HockeySDK_iOSBindings_HockeyApp_iOS_BITHockeyManager__StartManagerm__0_object_System_UnhandledExceptionEventArgs + 16****

6   mobileios                            0x000000010083dbf4 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 240
7   mobileios                            0x0000000100325a9c mono_jit_runtime_invoke (mini-runtime.c:2523)
8   mobileios                            0x000000010039463c do_runtime_invoke (object.c:2809)
9   mobileios                            0x00000001003974f4 call_unhandled_exception_delegate (object.c:4362)
10  mobileios                            0x00000001003970d4 mono_unhandled_exception (object.c:4454)
11  mobileios                            0x0000000100316fe0 mono_handle_exception_internal (mini-exceptions.c:1736)
12  mobileios                            0x00000001003161d0 mono_handle_exception (mini-exceptions.c:2027)
13  mobileios                            0x000000010030e0b0 mono_arm_throw_exception (exceptions-arm64.c:388)
14  mobileios                            0x000000010085c0f8 throw_exception + 164

Error opening iOS storyboards that goes away after removing Hockey

I'm opening this issue because of the correlation described below, but this may not be a Hockey issue.

It isn't clear what the root cause of the issue is, and it may well be Xamarin instead of Hockey, but using the latest tooling (Xamarin Studio, Visual Studio for Mac, or Visual Studio for Windows), along with latest Xamarin releases causes an error when creating new storyboards or opening existing ones in a project that references the Hockey SDK.

This was tested with the Hockey SDK version 5 (the latest) and 4.1.0-beta3.

When opening the storyboard a spinner is displayed for a bit and then a dialog is presented that reads:

MonoTouchDesignServerUnified quit unexpectedly.

After dismissing the dialog the storyboard appears with a yellow box at the top of the designer that reads:

Custom components are not being rendered because problems were detected

After removing the Hockey SDK from the project, the error no longer occurs, and after re-adding Hockey the error continues.

That said, other than the error, there are no obvious side-effects or errors that prevent one from managing and using storyboards.

Below is the detail on the tooling and versions in use:

=== Visual Studio Community 2017 for Mac ===

Version 7.2.2 (build 7)
Installation UUID: bea7a7b7-8ccc-457f-91d8-d618d3aed6e1
Runtime:
Mono 5.4.1.6 (2017-06/1f4613aa1ac) (64-bit)
GTK+ 2.24.23 (Raleigh theme)

Package version: 504010006

=== NuGet ===

Version: 4.3.1.4445

=== .NET Core ===

Runtime: /usr/local/share/dotnet/dotnet
Runtime Versions:
1.1.1
1.0.4
SDK: /usr/local/share/dotnet/sdk/1.0.3/Sdks
SDK Version: 1.0.3
MSBuild SDKs: /Library/Frameworks/Mono.framework/Versions/5.4.1/lib/mono/msbuild/15.0/bin/Sdks

=== Xamarin.Profiler ===

Version: 1.5.6
Location: /Applications/Xamarin Profiler.app/Contents/MacOS/Xamarin Profiler

=== Apple Developer Tools ===

Xcode 9.0 (13247)
Build 9A235

=== Xamarin.Android ===

Version: 8.0.2.1 (Visual Studio Community)
Android SDK: /Users/james.neno/Library/Developer/Xamarin/android-sdk-macosx
Supported Android versions:
4.0.3 (API level 15)
4.4 (API level 19)
6.0 (API level 23)
7.0 (API level 24)
8.0 (API level 26)

SDK Tools Version: 25.2.5
SDK Platform Tools Version: 26
SDK Build Tools Version: 23.0.1

Java SDK: /usr
java version "9.0.1"
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)

Android Designer EPL code available here:
https://github.com/xamarin/AndroidDesigner.EPL

=== Xamarin Inspector ===

Version: 1.3.2
Hash: 461f09a
Branch: 1.3-release
Build date: Tue, 03 Oct 2017 18:26:57 GMT
Client compatibility: 1

=== Xamarin.iOS ===

Version: 11.2.0.11 (Visual Studio Community)
Hash: 2f8bbec0
Branch: d15-4-xi
Build date: 2017-10-05 20:56:05-0400

=== Xamarin.Mac ===

Version: 3.8.1.0 (Visual Studio Community)

=== Build Information ===

Release ID: 702020007
Git revision: 2236098c68f51eeb447cb947a87371d1e84f6213
Build date: 2017-10-23 11:43:05-04
Xamarin addins: eaa605cf97f25ce184949f32c712b465ca96f665
Build lane: monodevelop-lion-d15-4

=== Operating System ===

Mac OS X 10.12.6
Darwin 16.7.0 Darwin Kernel Version 16.7.0
Thu Jun 15 17:36:27 PDT 2017
root:xnu-3789.70.16~2/RELEASE_X86_64 x86_64

There is not a method to send a handled exception to HockeyApp

Hello friends,

We are currently working in a project in Xamarin and we are consuming for example the web services from the PCL project, however we could not find a method or library to help us to send to HockeyApp manually the exception.

Basically what we would like to do is:
try
{
....
}
catch(Exception ex)
{
// Send to HockeyApp the handled exception from PCL project.
}

Is there a way to do that, somehow?

As a matter of workaround we created a log file on each platform when handled exceptions, and we would like also to find a way to send those log files to HockeyApp if not possible from PCL then from platform specific, is there a way to do that?

Thanks in advance

Error when updating to 4.1.5

I updated a set of packages today and found that I'm now getting the following error:

System.TypeInitializationException: The type initializer for 'Attribute' threw an exception. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.MissingFieldException: Field 'HockeyApp.Resource/String.hockeyapp_feedback_attachment_added' not found.

Only happens on the Android side of things. Does not happen on the iOS app.

Authenticator is null in example code

The manager.Authenticator is NULL, causing a NullReferenceException on start-up. Is there something missing from the example in the readme file?

public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions) {
   var manager = BITHockeyManager.SharedHockeyManager;
   manager.Configure("Your_App_Id");
   manager.StartManager();
   manager.Authenticator.AuthenticateInstallation(); // This line is obsolete in crash only builds
}

ShowFeedbackActivity Java File and Uri

I'm trying to pass a file uri to the ShowFeedbackActivity method, but it needs an Android.Net.Uri which needs to be created from a Java.IO.File, but the xamarin android sdk's method Context.OpenFileOutput(..) returns a System.IO.File

In my example, I'm trying to attach a log file to the FeedbackActivity, so how can I create the local file, generate its uri and pass it to the activity if the two api types are different? Am I doing it wrong or there is no way at the moment?

If there is another easier method to pass the log (which I have in a form of a big string) I can change to that way

Thanks

Improve error handling when an invalid app id is used

I was experimenting with this SDK at the Xamarin Evolve mini hacks area. https://github.com/xamarin/mini-hacks

The sample code leads to a NullReferenceException when an invalid App Id is used. It is easily fixed by using a valid App Id but the error does not point you in the right direction. Can the error reporting for invalid app ids be improved?

The way it works now the invalid app id is not caught until you try to use the Authenticator object on the SharedHockeyManager.

Ideally, .Configure or .StartManager would throw an exception indicating the app id is invalid.

 //Get the shared instance
var manager = BITHockeyManager.SharedHockeyManager;

//Configure it to use our APP_ID
manager.Configure ("<APP_ID>");

//Start the manager
manager.StartManager ();

//Authenticate (there are other authentication options)
manager.Authenticator.AuthenticateInstallation ();    
// ^ NRE here if APP_ID is invalid

5.1.x crashes on manager.StartManager() in iOS app extension

We recently updated the HockeyApp SDK lib in our project from 5.0.0 to 5.1.1 and noticed that our iOS action app extension no longer works after doing so.

Debugging our app extension we can see that the app crashes on the StartManager() line as shown here:

var crashManagerDelegate = new HockeyAppCrashManagerDelegate(appIdService, Resolver.Resolve<IAuthService>());
var manager = HockeyApp.iOS.BITHockeyManager.SharedHockeyManager;
manager.Configure("OURUUID", crashManagerDelegate);
manager.CrashManager.CrashManagerStatus = HockeyApp.iOS.BITCrashManagerStatus.AutoSend;
manager.UserId = appIdService.AppId;
manager.StartManager();

Source:

https://github.com/bitwarden/mobile/blob/e90501a986a4f23c922f87c1a5ae94c77bb556bc/src/iOS.Extension/LoadingViewController.cs#L58

Unfortunately no exception seems to be thrown. I even wrapped manager.StartManager() in a try/catch but was not able to catch the error. The extension just hard fails. I was able to get this from the XCode device logs, however:

https://gist.github.com/kspearrin/158d4dd37ad9c7f6b8472fe6ed9d286c

I think the crash is logged as a SIGNAL crash around line 392 of that gist.

Downgrading our project back to 5.0.0 causes the problem to go away and the app extension works as expected. No problems were observed with the main app using 5.1.1 though (here), which is quite odd.

Android SDK should not terminate on UnobservedTaskException unless ThrowUnobservedTaskExceptions config is set

Howdy,

Currently, the Android SDK will terminate the app if an UnobservedTaskException occurs. This is not expected behaviour - from .NET 4.5 onwards teardown for this reason is opt in, so apps typically don't crash for this reason.

I did some testing and found that it's possible to opt in on Xamarin.iOS, but after some time spent trying to do the same on Android I haven't had any luck. You can probably check with the team as to how app.config is supposed to work on Android - if it's supported then I guess the correct behaviour would be to check for opt in at registration time and only wire up the UnobservedTaskException event if you know those exceptions are going to result in an app crash. If not, then I think it makes more sense for the the default behaviour in these cases to be no logging/termination.

Items not added using PreparedItemsForFeedbackManager delegate method

I'm defining a few items for the feedback message but they are not added to the message body.

This is my delegate class:

public class HockeyAppFeedbackDelegate : BITFeedbackManagerDelegate
    ...
        public override NSArray PreparedItemsForFeedbackManager (BITFeedbackManager feedbackManager)
        {
            NSArray items = new NSArray ();

            items.SetValuesForKeysWithDictionary (new NSDictionary(new NSString("hey"),new NSString ("please"),new NSString ("add"),new NSString ("me")));

            return items;
        }
    }

Then in another class I define this method:

public void ShowFeedbackUI ()
        {
            FeedbackManager = Manager.FeedbackManager;

            var feedbackController = FeedbackManager.FeedbackComposeViewController ();
            FeedbackDelegate = new HockeyAppFeedbackDelegate ();
            feedbackController.Delegate = FeedbackDelegate;

            var window = UIApplication.SharedApplication.KeyWindow;
            var viewController = window.RootViewController;

            while (viewController.PresentedViewController != null) {
                viewController = viewController.PresentedViewController;
            }

            UINavigationController navController = new UINavigationController (feedbackController);
            navController.ModalPresentationStyle = UIModalPresentationStyle.OverCurrentContext;
            viewController.PresentViewController (navController, true, null);
        }

But the items are not added to the message when I send the feedback.

Hope you can have any ideas on this :)

Recommend Projects

  • React photo React

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

  • Vue.js photo Vue.js

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

  • Typescript photo Typescript

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

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

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

  • web

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

  • server

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

  • Machine learning

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

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

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

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.