ورود

View Full Version : دریافت گزارش force close برنامه



haniiii
سه شنبه 10 تیر 1393, 22:21 عصر
سلام

حتما براتون پیش اومده که در نظرات برنامتون عده ای مشکل فورس کلوز برنامه دارن با اینکه رو خیلی از گوشی ها برنامه رو تست کردین و درست کار کرده... چطوری میشه log مورد نظر وقتی برنامه فورس میده رو دریافت کرد ؟‌

فرستادنش به سرور فکر نکنم کار سختی باشه ...

کسی میتونه کمک کنه ؟‌

badname
سه شنبه 10 تیر 1393, 22:37 عصر
اگه اشتباه نکنم sdk سایت flurry کارتونو راه بندازه ، تمام فورس کلوز های برنامه تونو لیست میکنه تو سایتش ، خودم استفاده نکرده م ولی همه تعریفشو میکنن:لبخندساده:

haniiii
سه شنبه 10 تیر 1393, 22:43 عصر
اگه اشتباه نکنم sdk سایت flurry کارتونو راه بندازه ، تمام فورس کلوز های برنامه تونو لیست میکنه تو سایتش ، خودم استفاده نکرده م ولی همه تعریفشو میکنن:لبخندساده:

تا جایی که ممکنه میخوام کدش رو خودم زده باشم

pouya1999best@g
چهارشنبه 11 تیر 1393, 00:32 صبح
اگه اشتباه نکنم sdk سایت flurry کارتونو راه بندازه ، تمام فورس کلوز های برنامه تونو لیست میکنه تو سایتش ، خودم استفاده نکرده م ولی همه تعریفشو میکنن:لبخندساده:

اگه شما یا کس دیگری بلده لطفا آموزششو بده:متفکر:

smemamian
چهارشنبه 11 تیر 1393, 01:20 صبح
من فقط از قسمت بالا، قسمت جستجو نوشتم : flurry :

لینک 1 (http://barnamenevis.org/showthread.php?450604-%D9%85%D8%B4%DA%A9%D9%84-%D8%A8%D8%A7-flurry)

لینک 2 (http://barnamenevis.org/showthread.php?449750-%D9%85%D9%86%D8%B8%D9%88%D8%B1-%D8%A7%D8%B2-fluryy-%DA%86%DB%8C%D8%B3%D8%AA)

چقدر دیگه باید مدیران، و کاربران دیگه درباره جستجو تذکر بدهند؟!!

pouya1999best@g
چهارشنبه 11 تیر 1393, 02:43 صبح
ببخشید؛با چه کدی گزارش های خطا رو میفرسته؟؟؟

rubiks.kde
چهارشنبه 11 تیر 1393, 06:42 صبح
بهتر بود قبل از ایجاد تاپیک یه نگاهی به پست های قبل می انداختید.

این پست آموزش استفاده از یه سیستم کرش ریپورتر کاملا اختصاصی => آموزش (http://barnamenevis.org/showthread.php?420474-%D9%85%D8%B4%DA%A9%D9%84%D8%A7%D8%AA-%D8%A7%D9%86%D8%AA%D8%B4%D8%A7%D8%B1-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87&highlight=%D9%85%D8%B4%DA%A9%D9%84+%D8%A7%D9%86%D8 %AA%D8%B4%D8%A7%D8%B1+%D8%A8%D8%B1%D9%86%D8%A7%D9% 85%D9%87)

pouya1999best@g
چهارشنبه 11 تیر 1393, 09:13 صبح
لطفا آموزش گزارش خطای flurry رو بدید

Nevercom
چهارشنبه 11 تیر 1393, 12:24 عصر
می تونید از Flurry و Google Analytics استفاده کنید، تا علاوه بر تمام اطلاعات آماری، گزارش خطاها رو هم دریافت کنید.
از دید من گزارش خطای Flurry کاملتر هست، درواقع خروجی LogCat هنگام بروز خطا رو میفرسته (اگر از ProGuard استفاده کرده باشید، فایلی که ProGuard تولید می کنه برای دیکد کردن اطلاعات رو باید به Flurry بدید)

همچنین کتابخانه هایی مختص Error Reporting وجود دارن که محبوب ترینشون ARCA هست که علاوه بر گزارش خطا ها، به شما این امکان رو میده که هنگام بروز خطا واکنش مناسبی نشون بدید، مثلاً بجای نمایش دیالوگ Force Closed، یک دیالوگ اختصاصی نمایش بدید و از کاربر بخواید تا خطا رو گزارش کنه یا عذرخواهی کنید و....


این رو هم بخونید : http://stackoverflow.com/questions/601503/how-do-i-obtain-crash-data-from-my-android-application

pouya1999best@g
چهارشنبه 11 تیر 1393, 14:30 عصر
یه سوال این کد باید دقیقا کجا قرار بگیره؟؟؟
FlurryAgent.onError(String errorId, String message, String errorClass)

برای گزارش خطا بجز کد بالایی و این کد،چیز دیگه ای هم لازمه؟؟؟
@Override
protected void onStart()
{
super.onStart();
FlurryAgent.onStartSession(this, "YOUR_API_KEY");
}

@Override
protected void onStop()
{
super.onStop();
FlurryAgent.onEndSession(this);
}

Nevercom
چهارشنبه 11 تیر 1393, 15:48 عصر
Flurry بصورت پیشفرض 10 خطای اولی که در هر Session رخ بده رو گزارش می کنه، برای گزارش همه ی خطاها باید از متد onError برای گزارش خطا استفاده کنید.

pouya1999best@g
چهارشنبه 11 تیر 1393, 16:06 عصر
یعنی فقط این واسه گزارش کامل خطا کافیه؟؟؟
FlurryAgent.onError(String errorId, String message, String errorClass)
این دستور رو باید کجا بزارم؟؟؟:متفکر:

error id چیه؟؟؟
message چیه؟؟؟
errorClass چیه؟؟؟

Nevercom
چهارشنبه 11 تیر 1393, 17:24 عصر
کد زیر رو که استفاده کنید، ۱۰ خطا و Uncaught Exception رخ داده در هر Session رو دریافت می کنید:
@Overrideprotected void onStart()
{
super.onStart();
FlurryAgent.onStartSession(this, "YOUR_API_KEY");
}

@Override
protected void onStop()
{
super.onStop();
FlurryAgent.onEndSession(this);
}


برای گزارش هر خطا از متد onError استفاده کنید. جاهایی که احتمال می دید خطا یا Exception ی ره بده، کدها رو در try {..} catch بزارید و در بلاک catch از متد onError استفاده کنید.

pouya1999best@g
چهارشنبه 11 تیر 1393, 20:11 عصر
error id چیه؟؟؟
message چیه؟؟؟
errorClass چیه؟؟؟

Nevercom
چهارشنبه 11 تیر 1393, 22:03 عصر
درواقع متد درستش این هست:
FlurryAgent.onError(String errorId, String message, Throwable object)
errorId یک شناسه هست که خودتون به خطا نسبت می دید، احتمالاً برای گروه کردن هطاهای از یک نوع با هم استفاده میشه
message یک پیغام برای خطا هست که خطا رو شرح میده
object شئ ی از جنس Throwable هست که حاوی اطلاعات خطا هست، کد زیر نحوه ی استفاده رو نشون میده:
try {

// Some code which might throw exception

} catch (Exception e) {
FlurryAgent.onError("Internet Error", e.getMessage(), e);
}

pouya1999best@g
چهارشنبه 11 تیر 1393, 23:14 عصر
فقط یه سوال دیگه:
بجز کتابخانه خود ،باید کتابخانه Google Play Service رو هم اضافه کنیم؟؟؟:متفکر:

Nevercom
پنج شنبه 12 تیر 1393, 00:30 صبح
نه، برای Flurry نیاز به Google Play Services نیست.

pouya1999best@g
پنج شنبه 12 تیر 1393, 01:47 صبح
آخه توی مستنداتش نوشته میخواد!!!!

Nevercom
پنج شنبه 12 تیر 1393, 02:08 صبح
لینک اون بخش از مستندات رو لطف کنید تا بررسیش کنم، چون خیلی وقته دارم استفاده می کنم و اطمینان دارم هیچ وابستگی ای به اون کتابخانه برای کارکرد صحیحش نداره.

pouya1999best@g
پنج شنبه 12 تیر 1393, 02:23 صبح
بعد از ظهر کل ReadMe.pdf رو براتون میفرستم:چشمک:

pouya1999best@g
پنج شنبه 12 تیر 1393, 13:31 عصر
این قسمتی که نوشته کتابخانه رو اضافه کنیم:

Using Eclipse:
1. Add FlurryAnalytics 4.0.0.jar to your project’s libs folder. Right click on each JAR file and select
Build Path > Add to Build Path.
2. Add Google Play Service library. Please follow instructions at
http://developer.android.com/google/playservices/
setup.html#Setup
3. Add v4/v7 Support Library. Please follow instructions at
https://developer.android.com/tools/supportlibrary/
setup.html#addlibrary.

Nevercom
پنج شنبه 12 تیر 1393, 14:34 عصر
من از نسخه ی 3 استفاده می کنم و به نسخه ی 4 آپگرید نکردم، اما مستندات رو که خوندم فقط در FlurryAds نیاز به Google Play Services هست (از ID که Play Services تولید می کنه استفاده می کنه)، گرچه در مستندات Analytics هم گفته اضافه بشه، حدس میزنم برای Analytics این وابستگی وجود نداشته باشه (علی رغم توصیه ی مستندات)، باید تست بشه مطمئن نیستم

haniiii
جمعه 13 تیر 1393, 00:03 صبح
کسی راهی برای پیاده سازی این بدون library نداره ؟‌...

pouya1999best@g
جمعه 13 تیر 1393, 14:13 عصر
مشکلتون با لایبرری چیه؟؟؟
پیاده سازیش که کاری نداره...
کتابخانه رو توی پوشه libs قرار بده و روش کلیک راست کن و گزینه Add to Build Path رو بزن.:لبخند:

haniiii
جمعه 13 تیر 1393, 14:42 عصر
مشکلتون با لایبرری چیه؟؟؟
پیاده سازیش که کاری نداره...
کتابخانه رو توی پوشه libs قرار بده و روش کلیک راست کن و گزینه Add to Build Path رو بزن.:لبخند:

مشکل پیاده سازیش نیست

بیشتر Custom دوست دارم باشه ... معمولا تو لایبرری ها نمیشه کد رو تغییر داد