/// <summary>
        /// Constructor for the Application object.
        /// </summary>
        public App()
        {
            // Global handler for uncaught exceptions.
            UnhandledException += Application_UnhandledException;

            // Standard XAML initialization
            InitializeComponent();

            // Phone-specific initialization
            InitializePhoneApplication();

            // Language display initialization
            InitializeLanguage();

            // Show graphics profiling information while debugging.
            if (Debugger.IsAttached)
            {
                // Display the current frame rate counters.
                Application.Current.Host.Settings.EnableFrameRateCounter = true;

                // Show the areas of the app that are being redrawn in each frame.
                //Application.Current.Host.Settings.EnableRedrawRegions = true;

                // Enable non-production analysis visualization mode,
                // which shows areas of a page that are handed off to GPU with a colored overlay.
                //Application.Current.Host.Settings.EnableCacheVisualization = true;

                // Prevent the screen from turning off while under the debugger by disabling
                // the application's idle detection.
                // Caution:- Use this under debug mode only. Application that disables user idle detection will continue to run
                // and consume battery power when the user is not using the phone.
                PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled;
            }


            #region HOCKEYAPP SAMPLE CODE

            //this is just a sample in memory logger using MetroLog
            var config = new LoggingConfiguration();
            var inMemoryLogTarget = new InMemoryLogTarget(40);
            config.AddTarget(LogLevel.Warn, inMemoryLogTarget);
            LogManagerFactory.DefaultConfiguration = config;

            //main configuration method for HockeySDK. following lines are optional configurations options
            HockeyClient.Current.Configure(DemoConstants.YOUR_APP_ID)
                .SetExceptionDescriptionLoader((ex) => { return inMemoryLogTarget.LogLines.Aggregate((a, b) => a + "\n" + b); }) //return additional info from your logger on crash
                // .SetApiDomain("https://your.dedicated.hockey.server")
                .UseCustomResourceManager(AppResources.ResourceManager)
                .SetContactInfo(DemoConstants.USER_NAME, DemoConstants.USER_EMAIL);

            //optional register your logger for internal logging of HockeySDK
            HockeyLogManager.GetLog = (t) => { return new HockeyAppMetroLogWrapper(t); };

            //optional should only used in debug builds. register an event-handler to get exceptions in HockeySDK code that are "swallowed" (like problems writing crashlogs etc.)
#if DEBUG
            ((HockeyClient)HockeyClient.Current).OnHockeySDKInternalException += (sender, args) =>
            {
                if (Debugger.IsAttached)
                {
                    Debugger.Break();
                }
            };
#endif
            #endregion
        }
Exemplo n.º 2
0
        /// <summary>
        /// Constructor for the Application object.
        /// </summary>
        public App()
        {
            // Global handler for uncaught exceptions.
            UnhandledException += Application_UnhandledException;

            // Standard XAML initialization
            InitializeComponent();

            // Phone-specific initialization
            InitializePhoneApplication();

            // Language display initialization
            InitializeLanguage();

            // Show graphics profiling information while debugging.
            if (Debugger.IsAttached)
            {
                // Display the current frame rate counters.
                Application.Current.Host.Settings.EnableFrameRateCounter = true;

                // Show the areas of the app that are being redrawn in each frame.
                //Application.Current.Host.Settings.EnableRedrawRegions = true;

                // Enable non-production analysis visualization mode,
                // which shows areas of a page that are handed off to GPU with a colored overlay.
                //Application.Current.Host.Settings.EnableCacheVisualization = true;

                // Prevent the screen from turning off while under the debugger by disabling
                // the application's idle detection.
                // Caution:- Use this under debug mode only. Application that disables user idle detection will continue to run
                // and consume battery power when the user is not using the phone.
                PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled;
            }


            #region HOCKEYAPP SAMPLE CODE

            //this is just a sample in memory logger using MetroLog
            var config            = new LoggingConfiguration();
            var inMemoryLogTarget = new InMemoryLogTarget(40);
            config.AddTarget(LogLevel.Warn, inMemoryLogTarget);
            LogManagerFactory.DefaultConfiguration = config;

            //main configuration method for HockeySDK. following lines are optional configurations options
            HockeyClient.Current.Configure(DemoConstants.YOUR_APP_ID)
            .SetExceptionDescriptionLoader((ex) => { return(inMemoryLogTarget.LogLines.Aggregate((a, b) => a + "\n" + b)); })    //return additional info from your logger on crash
            // .SetApiDomain("https://your.dedicated.hockey.server")
            .UseCustomResourceManager(AppResources.ResourceManager)
            .SetContactInfo(DemoConstants.USER_NAME, DemoConstants.USER_EMAIL);

            //optional register your logger for internal logging of HockeySDK
            HockeyLogManager.GetLog = (t) => { return(new HockeyAppMetroLogWrapper(t)); };

            //optional should only used in debug builds. register an event-handler to get exceptions in HockeySDK code that are "swallowed" (like problems writing crashlogs etc.)
#if DEBUG
            ((HockeyClient)HockeyClient.Current).OnHockeySDKInternalException += (sender, args) =>
            {
                if (Debugger.IsAttached)
                {
                    Debugger.Break();
                }
            };
#endif
            #endregion
        }