xamarin上常用的崩潰分析工具有TestFlight,HockeyApp, Crashlytics等。TestFlight沒用過,Crashlytics註冊需要訪問Google,不好弄,HockeyApp走通了,步驟記錄如下: 1.配置HockeyApp 進入官網https://hockeyap ...
xamarin上常用的崩潰分析工具有TestFlight,HockeyApp, Crashlytics等。TestFlight沒用過,Crashlytics註冊需要訪問Google,不好弄,HockeyApp走通了,步驟記錄如下:
1.配置HockeyApp
進入官網https://hockeyapp.net/#s,註冊登錄,之後進入界面
2.點擊NewApp按鈕,進入
點擊manually,進入
選擇Platform,填寫Title,Bundle Identifier。對於Bundle Identifier,如果跑在simulator上,隨便寫,過會配置下就可以了,如果跑在真機上,要和XCode中指定的bundleID保持一致; 點擊保存。等一會會生成,如下圖中的app Test1.
點擊Test1,打開如下
圖中的1處就是Bundle Identifier,可以改的。圖中2處就是App ID,下麵代碼中是要用的。
2.配置xamarin應用
vs2017打開IOS工程,Reference右鍵,Manage Nuget Packeges
找到HockeySDK.Xamarin安裝
之後打開AppDelegate.cs
,在FinishedLaunching
方法中添加一下代碼
public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
{
var manager = HockeyApp.iOS.BITHockeyManager.SharedHockeyManager;
manager.LogLevel = HockeyApp.iOS.BITLogLevel.Debug;
manager.Configure("b5f47e198c4f4ad9af72c4e7f49f71ff");//參數就是上面HockeyApp生成的App ID
manager.StartManager();
manager.Authenticator.AuthenticateInstallation(); // This line is obsolete in crash only builds
// Override point for customization after application launch.
// If not required for your application you can safely delete this method
return true;
}
這樣應用就具有上傳crash report的功能了,如果應用裝到IOS設備上,再做一下配置
雙擊打開IOS工程中的Info.plist
配置下Application Name 和Bundle Identifier,和上面創建的HockeyApp應用保持一致。
ok,simulation跑起來,隨便在代碼的某一處,比如點擊一個按鈕觸發一個異常,這個時候界面閃崩,當你再次啟動這個應用的時候
會通知你讓你發送crash report,點擊Send Report
3.查看結果
再次進入HockApp,查看崩潰信息,裡面有你很關心的崩潰信息呦。