ACRA چیست؟

اردیبهشت ۱۲, ۱۳۹۵

پیاده‌سازی یک برنامه اندروید، تقریبا کار آسانی است، اما تبدیل آن به یک برنامه قدرتمند، پایدار و انعطاف‌پذیر کاری بس دشوار و زمانبر می‌تواند باشد.

با وجود هزاران نوع دستگاه اندرویدی که توسط ده‌ها شرکت مختلف تولید شده‌اند، تصور اینکه یک برنامه اندروید بتواند بر روی همه آن‌ها بدون هیچ مشکلی اجرا شود، خیالی خام است. این شکاف و چند بخشی بودن پلتفرم اندروید، بزرگترین معضل آن محسوب می‌شود که باعث افزایش هزینه و زمان توسعه، نگهداری و پشتیبانی برنامه‌های اندروید شده است.

چرا گزارش خطا برای اندروید اهمیت دارد؟

وقتی که یک برنامه اندروید کرش می‌کند، چه اتفاقی می‌افتد؟ مشخص است، یک پیغام Force Close به کاربر نمایش داده می‌شود و وی را مطلع می‌سازد که برنامه دچار مشکل شده است و اندروید قادر به اجرا آن نیست. اگر برنامه از Google Play دانلود شده باشد، از کاربر درخواست می‌شود که کرش را به همراه اطلاعاتی مانند زمان، مدل گوشی، نسخه اندروید و … گزارش بدهد. سپس توسعه‌دهنده آن برنامه می‌تواند در کنسول توسعه‌دهندگان آن مشکل را مشاهده و رفع نماید.

این بسیار امکان خوبی است، اما به شرط اینکه کاربران همکاری و مشارکت نمایند، در غیر این صورت توسعه‌دهنده آن برنامه راهی ندارد که متوجه مشکل شود.

معرفی ACRA

ACRA مخفف Application Crash Reports for Android، به معنی گزارش‌های کرش برنامه‌های اندروید است. این کتابخانه رایگان و متن‌باز به شما این امکان را می‌دهد که تنها با افزودن چند خط کد به برنامه خود، در جریان کلیه کرش‌هایی که در سراسر دنیا برای برنامه شما اتفاق می‌افتد قرار بگیرید.

این کتابخانه به صورت پیش فرض بدون اینکه کاربران شما متوجه شوند، لیست کرش‌های اتفاق افتاده را به همراه جزئیات تکمیلی مانند نسخه سیستم عامل، نوع گوشی یا تبلت و … برای شما ارسال می‌کند. اما اگر تمایل داشته باشید، می‌توانید این موضوع را به کاربر اطلاع دهید و با بازکردن یک دیالوگ نظرات آنان را هم به همراه گزارشات دریافت کنید.

در ابتدا، ACRA از سرویس Google Spreadsheet جهت ذخیره‌سازی گزارشات خطا استفاده می‌کرد. بدین صورت که تمام گزارشات برنامه شما در قالب یک فایل بر روی Google Drive ذخیره می‌شد. این امکان باعث می‌شد که نیازی به صرف زمان و هزینه جهت راه‌اندازی یک فضای ذخیره‌سازی آنلاین نداشته باشید. اما متاسفانه گوگل با اعمال یک سری محدودیت‌ها بر روی این سرویس خود باعث شد که در نسخه‌های جدید ACRA از این سرویس پشتیبانی نشود.

برای استفاده از ACRA شما سه راهکار زیر را می‌توانید استفاده نمائید:

  • نرم‌افزار ذخیره‌سازی گزارشات مخصوص خود را پیاده‌سازی و میزبانی کنید. این نرم‌افزار می‌تواند یک اسکریپت ساده مشابه نمونه کد زیر باشد که محتوای هر گزارش را در یک فایل جداگانه ذخیره می‌کند.
<?php
    // Outputs all POST parameters to a text file. The file name is the date_time of the report reception
    $fileName = date('Y-m-d_H-i-s').'.txt';
    $file = fopen($fileName,'w') or die('Could not create report file: ' . $fileName);
    foreach($_POST as $key => $value) {
      $reportLine = $key." = ".$value."\n";
      fwrite($file, $reportLine) or die ('Could not write to report file ' . $reportLine);
    }
    fclose($file);
?>
  • از نرم‌افزارهای متن‌بازی مانند Acralyzer که زیرساخت رسمی و اختصاصی ACRA است، استفاده نمائید.
  • از خدمات شرکت‌های ثالثی مانند MBaaS استفاده نمائید.

برای دانلود سورس این کتابخانه و کسب اطلاعات بیشتر به لینک ACRA می‌توانید مراجعه نمائید.

تگ‌ها ; , ,

نظر دهید:

لطفا در نظر داشته باشید که بر اظهارنظرها نظارت می شود. بنابراین، در نظرات خود از کلمات اسپم و ... استفاده نکنید، در غیر این صورت نظر شما حذف خواهد شد.