Android
क्रैश रिपोर्टिंग उपकरण
खोज…
टिप्पणियों
गितुब में सबसे अच्छा पूर्ण विकि उपलब्ध है।
कपड़ा - दुर्घटनाग्रस्त
फैब्रिक एक मॉड्यूलर मोबाइल प्लेटफॉर्म है जो आपके एप्लिकेशन को बनाने के लिए उपयोगी किट प्रदान करता है। क्रैशलाईटिक्स फैब्रिक द्वारा प्रदान किया गया एक क्रैश और समस्या रिपोर्टिंग उपकरण है जो आपको अपने अनुप्रयोगों को विस्तार से ट्रैक और मॉनिटर करने की अनुमति देता है।
फैब्रिक-क्रैशलाइट्स को कैसे कॉन्फ़िगर करें
चरण 1: अपने build.gradle
बदलें:
प्लगइन रेपो और ग्रेडेल प्लगइन जोड़ें:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
// The Fabric Gradle plugin uses an open ended version to react
// quickly to Android tooling updates
classpath 'io.fabric.tools:gradle:1.+'
}
}
प्लगइन लागू करें:
apply plugin: 'com.android.application'
//Put Fabric plugin after Android plugin
apply plugin: 'io.fabric'
फैब्रिक रेपो जोड़ें:
repositories {
maven { url 'https://maven.fabric.io/public' }
}
क्रैशलीट्रिक्स किट जोड़ें:
dependencies {
compile('com.crashlytics.sdk.android:crashlytics:2.6.6@aar') {
transitive = true;
}
}
चरण 2: AndroidManifest.xml
में अपनी एपीआई कुंजी और इंटरनेट की अनुमति जोड़ें
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application
... >
<meta-data
android:name="io.fabric.ApiKey"
android:value="25eeca3bb31cd41577e097cabd1ab9eee9da151d"
/>
</application>
<uses-permission android:name="android.permission.INTERNET" />
</manifest>
चरण 3: किट को रनटाइम में आप कोड में, उदाहरण के लिए:
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Init the KIT
Fabric.with(this, new Crashlytics());
setContentView(R.layout.activity_main);
}
}
चरण 4: प्रोजेक्ट बनाएँ। बनाने और चलाने के लिए:
फैब्रिक आईडीई प्लगइन का उपयोग करना
इस लिंक के बाद एंड्रॉइड स्टूडियो या इंटेलीजे के लिए फैब्रिक आईडीई प्लगइन का उपयोग करके किट स्थापित किए जा सकते हैं।
प्लगइन स्थापित करने के बाद, एंड्रॉइड स्टूडियो को पुनरारंभ करें और एंड्रॉइड स्टूडियो का उपयोग करके अपने खाते के साथ लॉगिन करें।
(संक्षिप्त कुंजी> CTRL + L
)
फिर यह उन परियोजनाओं को दिखाएगा जो आपके पास हैं / आपने जो परियोजना खोली है, जिसे आपको ज़रूरत है उसे चुनें और अगले पर क्लिक करें .. अगला।
उस किट का चयन करें जिसे आप जोड़ना चाहते हैं, उसके उदाहरण के लिए यह Crashlytics है :
फिर Install
हिट Install
। आपको इसे इस बार मैन्युअल रूप से उपर्युक्त प्लगिन प्लगइन की तरह जोड़ने की आवश्यकता नहीं है, इसके बजाय यह आपके लिए निर्माण करेगा।
किया हुआ!
एसीआरए के साथ क्रैश रिपोर्टिंग
चरण 1: नवीनतम ACRA AAR की निर्भरता को अपने अनुप्रयोग gradle (build.gradle) में जोड़ें।
चरण 2: आपके एप्लिकेशन वर्ग में (वह वर्ग जो एप्लिकेशन का विस्तार करता है; यदि इसे नहीं बनाता है) एक @ReportsCrashes
एनोटेशन जोड़ें और attachBaseContext()
को attachBaseContext()
विधि को ओवरराइड करें।
चरण 3: अपने आवेदन वर्ग में ACRA वर्ग को आरम्भिक करें
@ReportsCrashes(
formUri = "Your choice of backend",
reportType = REPORT_TYPES(JSON/FORM),
httpMethod = HTTP_METHOD(POST/PUT),
formUriBasicAuthLogin = "AUTH_USERNAME",
formUriBasicAuthPassword = "AUTH_PASSWORD,
customReportContent = {
ReportField.USER_APP_START_DATE,
ReportField.USER_CRASH_DATE,
ReportField.APP_VERSION_CODE,
ReportField.APP_VERSION_NAME,
ReportField.ANDROID_VERSION,
ReportField.DEVICE_ID,
ReportField.BUILD,
ReportField.BRAND,
ReportField.DEVICE_FEATURES,
ReportField.PACKAGE_NAME,
ReportField.REPORT_ID,
ReportField.STACK_TRACE,
},
mode = NOTIFICATION_TYPE(TOAST,DIALOG,NOTIFICATION)
resToastText = R.string.crash_text_toast)
public class MyApplication extends Application {
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
// Initialization of ACRA
ACRA.init(this);
}
}
जहाँ AUTH_USERNAME और AUTH_PASSWORD आपके वांछित बैकेंड के प्रमाण हैं।
चरण 4: AndroidManifest.xml में एप्लिकेशन वर्ग को परिभाषित करें
<application
android:name=".MyApplication">
<service></service>
<activity></activity>
<receiver></receiver>
</application>
चरण 5: सुनिश्चित करें कि आपके पास दुर्घटनाग्रस्त आवेदन से रिपोर्ट प्राप्त करने की internet
अनुमति है
<uses-permission android:name="android.permission.INTERNET"/>
यदि आप बैकएंड को साइलेंट रिपोर्ट भेजना चाहते हैं तो इसे प्राप्त करने के लिए नीचे दी गई विधि का उपयोग करें।
ACRA.getErrorReporter().handleSilentException(e);
फैब्रिक के साथ एक टेस्ट क्रैश फोर्स
एक बटन जोड़ें आप एक दुर्घटना को ट्रिगर करने के लिए टैप कर सकते हैं। इस कोड को अपने लेआउट में पेस्ट करें जहाँ आप बटन को दिखाना चाहते हैं।
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="Force Crash!"
android:onClick="forceCrash"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true" />
एक RuntimeException फेंक दें
public void forceCrash(View view) {
throw new RuntimeException("This is a crash");
}
अपना ऐप चलाएं और क्रैश होने के लिए नए बटन पर टैप करें। एक या दो मिनट में आपको अपने क्रैशलाईटिक्स डैशबोर्ड पर दुर्घटना को देखने में सक्षम होना चाहिए और साथ ही आपको एक मेल भी मिलेगा।
शर्लक का उपयोग करके क्रैश कैप्चर करें
शर्लक आपके सभी क्रैश को कैप्चर करता है और उन्हें एक सूचना के रूप में रिपोर्ट करता है। जब आप सूचना पर टैप करते हैं, तो यह डिवाइस और एप्लिकेशन जानकारी के साथ सभी क्रैश विवरणों के साथ एक गतिविधि को खोलता है
अपने आवेदन के साथ शर्लक को कैसे एकीकृत करें?
आपको बस शर्लक को अपनी परियोजना में एक निर्भरता के रूप में जोड़ना होगा।
dependencies {
compile('com.github.ajitsing:sherlock:1.0.1@aar') {
transitive = true
}
}
अपने एंड्रॉइड स्टूडियो को सिंक करने के बाद, अपने एप्लिकेशन क्लास में शर्लक को इनिशियलाइज़ करें।
package com.singhajit.login;
import android.app.Application;
import com.singhajit.sherlock.core.Sherlock;
public class SampleApp extends Application {
@Override
public void onCreate() {
super.onCreate();
Sherlock.init(this);
}
}
आपको बस इतना करना चाहिए। इसके अलावा शर्लक सिर्फ एक दुर्घटना की रिपोर्ट करने से ज्यादा कुछ नहीं करता है। इसकी सभी विशेषताओं की जाँच करने के लिए इस लेख पर एक नज़र डालें।
डेमो