آموزش جاوا و اندروید

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

آموزش جاوا و اندروید

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

طبقه بندی موضوعی

۲۶۰ مطلب با موضوع «آموزش اندروید» ثبت شده است

از کتابخونه GSON برای map کردن یک شی جاوایی به JSON و برعکس (یعنی پارس کردن JSON) استفاده میشه.

 

این کتابخونه مخصوصا در پارس کردن jsonهایی با اشیای تو در تو (nested) کارها رو خیلی ساده میکنه و استفاده ازش توصیه میشه.

 

از GSON علاوه بر اندروید، در جاوا هم میشه استفاده کرد.

۰ نظر موافقین ۰ مخالفین ۰ ۱۰ آذر ۹۹ ، ۱۳:۴۵
میم دال

برای ارسال آبجکت از یک اکتیویتی به اکتیویتی دیگر سه راه وجود دارد:

 

1. اینکه دونه دونه ویژگی هاش رو گت کنیم (البته اگر primitive باشن) و از طریق putExtra بفرستیم که روش جالبی نیست.

 

2. پیاده سازی اینترفیس serializable توسط کلاس مدل. این اینترفیس در جاوا تعریف شده و روش خوب و ساده ایه هست. فقط سرعتش کمه.

 

3. پیاده سازی اینترفیس Parceable توسط کلاس مدل. این API جز SDK اندروید هست و سرعت خیلی بیشتری نسبت به قبلی داره ولی پیاده سازیش یک مقدار پیچیده تره.

۰ نظر موافقین ۰ مخالفین ۰ ۱۰ آذر ۹۹ ، ۱۳:۳۷
میم دال

کتابخانه AudioRecordView یک Audio visualizer برای فایل های صوتی می باشد.

 

مقاله مدیوم برای آموزش استفاده از این کتابخانه

 

از این کتابخانه در اپ voice recorder استفاده کردم.

۰ نظر موافقین ۰ مخالفین ۰ ۰۸ آذر ۹۹ ، ۱۲:۵۲
میم دال

اینکه دات و اسلش در مسیر فایل ها در جاوا (و البته اندروید) چه معنی ای دارند همیشه درگیرم کرده!

 

اینجا

۰ نظر موافقین ۰ مخالفین ۰ ۰۸ آذر ۹۹ ، ۱۲:۴۶
میم دال

در اندروید دو نوع حافظه داریم:

 

حافظه داخلی و حافظه خارجی

 

۰ نظر موافقین ۰ مخالفین ۰ ۰۸ آذر ۹۹ ، ۱۲:۴۴
میم دال

در اندروید برای پلی کردن مدیا از کلاس MediaPlayer استفاده میشه. بدین صورت:

mediaPlayer = new MediaPlayer();
try {
    mediaPlayer.setDataSource(fileToPlay.getAbsolutePath());
    mediaPlayer.prepare();
    mediaPlayer.start();
} catch (IOException e) {
    e.printStackTrace();
}

۰ نظر موافقین ۰ مخالفین ۰ ۰۸ آذر ۹۹ ، ۰۷:۴۱
میم دال

ممکنه بخواهیم آیتم های ریسایکلر ویو رو مرتب سازی کنیم. (مثلا توی اپ Voice Recorder فایل های ضبط شده برحسب تاریخ مرتب سازی شدن). برای این کار باید لیستی که به ریسایکلر ویو میدیم رو برحسب ویژگی مد نظرمون sort کنیم.

برای این کار کلاس model باید اینترفیس comparable یا comparator رو پیاده سازی کنه. این دو تا مثل هم هستن ولی تفاوت هایی دارن که در جدول زیر اومده:

 

۰ نظر موافقین ۰ مخالفین ۰ ۰۷ آذر ۹۹ ، ۰۸:۱۵
میم دال

قبلا برای مدیریت onBackPressed در فرگمنت از روش سنتی استفاده میکردیم! بدین صورت که در اکتیویتی اصلی که host فرگمنت هست، فرگمنت فعلی رو میگرفتیم و بررسی میکردیم کدوم فرگمنت هست و با توجه به آن، دکمه بک مدیریت میشد.

۰ نظر موافقین ۰ مخالفین ۰ ۰۴ آذر ۹۹ ، ۰۹:۲۸
میم دال

نویگیشن کامپوننت که یکی از زیر مجموعه های لایبرری Jetpack به شمار میره، برای این به وجود اومده که کار با فرگمنت ها رو ساده کنه. عمدتا از نویگیشن کامپوننت در اپ های single activity استفاده میشه.

۰ نظر موافقین ۰ مخالفین ۰ ۳۰ آبان ۹۹ ، ۰۴:۵۹
میم دال

توی کدوم یک از این متدها باید لاجیک کد (یعنی initialize و بقیه موارد) رو انجام داد؟

 

اینجا میگه توی onCreateView فقط ویو inflate شود و در onViewCreated لاجیک کد رو بنویسیم. دلیلشم اینه که میگه ممکنه توی متد onCreateView هنوز ویو آماده نشده باشه و ممکنه اپ کرش کنه.

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

۰ نظر موافقین ۰ مخالفین ۰ ۲۹ آبان ۹۹ ، ۱۲:۵۰
میم دال