android教程之hockeyapp捕獲異常示例
package com.example.testhockeyapp;
import net.hockeyapp.android.CrashManager;
import net.hockeyapp.android.CrashManagerListener;
import net.hockeyapp.android.UpdateManager;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends Activity {
private static final String App_ID = "a7ab0fe5f11edc8afbfbc842ecc38ad7";
String a = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
a.charAt(23);
}
});
checkForUpdates();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
checkForCrashes();
}
private void checkForCrashes() {
CrashManager.register(this, App_ID, new CrashManagerListener() {
@Override
public void onCrashesSent() {
super.onCrashesSent();
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(getApplicationContext(),
"Crash data was sent. Thanks!",
Toast.LENGTH_LONG).show();
}
});
}
@Override
public void onCrashesNotSent() {
super.onCrashesNotSent();
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(
getApplicationContext(),
"Crash data failed to sent. Please try again later.",
Toast.LENGTH_LONG).show();
}
});
}
});
}
private void checkForUpdates() {
// Remove this for store builds!
UpdateManager.register(this, App_ID);
}
}
相關(guān)文章
Android實(shí)現(xiàn)電池管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)電池管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01
Android實(shí)現(xiàn)帶頁面切換的鎖屏功能
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)帶頁面切換的鎖屏功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-06-06
加載頁面遮擋耗時(shí)操作任務(wù)頁面--第三方開源之AndroidProgressLayout
AndroidProgressLayout實(shí)現(xiàn)為界面添加圓形進(jìn)度條。調(diào)用setprogress()方法顯示和隱藏進(jìn)度條,這篇文章主要介紹了加載頁面遮擋耗時(shí)操作任務(wù)頁面--第三方開源之AndroidProgressLayout的相關(guān)資料,需要的朋友可以參考下2015-11-11
Android自定義View實(shí)現(xiàn)可以拖拽的GridView
這篇文章主要為大家詳細(xì)介紹了Android自定義View實(shí)現(xiàn)可以拖拽的GridView,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-06-06
Android 實(shí)現(xiàn)抖音頭像底部彈框效果的實(shí)例代碼
這篇文章主要介紹了Android 實(shí)現(xiàn)抖音頭像底部彈框效果,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04
Android實(shí)現(xiàn)拖動(dòng)效果的兩種方法
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)拖動(dòng)效果的兩種方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-04-04
總結(jié)Android中多線程更新應(yīng)用的頁面信息的方式
這篇文章主要介紹了總結(jié)Android中多線程更新應(yīng)用的頁面信息的方式,文中共總結(jié)了runOnUiThread、Handler、AsyncTask異步以及View直接在UI線程中更新的方法,需要的朋友可以參考下2016-02-02
ListView-添加item的事件監(jiān)聽實(shí)例
下面小編就為大家?guī)硪黄狶istView-添加item的事件監(jiān)聽實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07
分享一個(gè)Android設(shè)置圓形圖片的特別方法
圓形圖片想必是項(xiàng)目開發(fā)中也是不少用的一個(gè)知識(shí)點(diǎn)吧。那么這里學(xué)習(xí)一下簡(jiǎn)單的制作圓形圖片,這個(gè)方法不用于平時(shí)的實(shí)現(xiàn)方法,有需要的可以參考借鑒。2016-09-09
Android開發(fā)實(shí)現(xiàn)圖片圓角的方法
這篇文章主要介紹了Android開發(fā)實(shí)現(xiàn)圖片圓角的方法,涉及Android針對(duì)圖形圖像的相關(guān)操作技巧,需要的朋友可以參考下2016-10-10

