# پروژه GOAT Messenger
### مقدمه
بالاخره به قسمت مهم این آزمون یعنی پیادهسازی رسیدیم. دقت کنید که در این قسمت تمرکز ما در ارزیابی بر روی نحوهی پیادهسازی و خوانایی کد شماست.
پروژهای که با هم توسعه میدهیم از چندین بخش تشکیل شده و هر بخش نمرهی جداگانهای دارد پس هر تعدادی از این بخشها را که موفق به پیادهسازی آن شدید، برای ما ارسال کنید.
توجه کنید که در نهایت باید فایلهای پروژهی خودتان را به صورت `zip` در سیستم داوری برای ما ارسال کنید.
**ابتدا فایل اولیه پروژه را از طریق این [لینک](https://quera.org/qbox/view/CxMmmYo4Jm/GOATMessenger.zip) دانلود کنید.**
### تعریف پروژه
در این پروژه میخواهیم یک پیامرسان نیمهآماده را توسعه دهیم. برای شروع، ابتدا باید پروژهی اولیه اندرویدی را دانلود کنیم و پس اینکه آن را از حالت `zip` خارج کردیم، آن را در اندروید استودیو اجرا کنیم.
**توجه:** برای بیلد کردن این پروژه نیاز به تحریمشکن داریم و میتوانیم از تحریمشکنهایی مانند [شکن](https://shecan.ir) استفاده کنیم و بعد از دانلود ریسورسهای پروژه، آن را `launch` کنیم.
** توجه:** پوشه های مربوط به build را در فایل زیپ نگذارید.
پروژه GOAT Messenger🔗
مقدمه🔗
بالاخره به قسمت مهم این آزمون یعنی پیادهسازی رسیدیم. دقت کنید که در این قسمت تمرکز ما در ارزیابی بر روی نحوهی پیادهسازی و خوانایی کد شماست.
پروژهای که با هم توسعه میدهیم از چندین بخش تشکیل شده و هر بخش نمرهی جداگانهای دارد پس هر تعدادی از این بخشها را که موفق به پیادهسازی آن شدید، برای ما ارسال کنید.
توجه کنید که در نهایت باید فایلهای پروژهی خودتان را به صورت zip
در سیستم داوری برای ما ارسال کنید.
ابتدا فایل اولیه پروژه را از طریق این لینک دانلود کنید.
تعریف پروژه🔗
در این پروژه میخواهیم یک پیامرسان نیمهآماده را توسعه دهیم. برای شروع، ابتدا باید پروژهی اولیه اندرویدی را دانلود کنیم و پس اینکه آن را از حالت zip
خارج کردیم، آن را در اندروید استودیو اجرا کنیم.
توجه: برای بیلد کردن این پروژه نیاز به تحریمشکن داریم و میتوانیم از تحریمشکنهایی مانند شکن استفاده کنیم و بعد از دانلود ریسورسهای پروژه، آن را launch
کنیم.
** توجه:** پوشه های مربوط به build را در فایل زیپ نگذارید.
میخواهیم که برای امیر پیام ارسال کنیم و بعد از ارسال پیام، امیر مانند عکس زیر جواب ما را بدهد.
**نکته:** بعد از ارسال هر پیام در صورتی که اسکرول پیامها بالاتر باشد به آخر چت که شامل پیام جدید است اسکرول کند.
**نکته:** بعد از ارسال هر پیام باید `EditText` خالی شود.

### راهنمایی
+ جواب امیر برای هر پیام ما «بله» (`Bale`) هستش که میتوانیم از متد `createSimpleMessag` در کلاس `Contact` برای ساختن پیام فیک از طرف امیر استفاده کنیم.
+ به این نکته دقت داشته باشید که پیامهایی که از سمت شما ارسال میشود فیلد `sender` آن در کلاس `Message` برابر صفر هستند. (برای بهتر متوجه شدن این نکته، متد `isIncoming` در کلاس `Message` را نگاه کنید.)
قسمت دوم
میخواهیم که برای امیر پیام ارسال کنیم و بعد از ارسال پیام، امیر مانند عکس زیر جواب ما را بدهد.
نکته: بعد از ارسال هر پیام در صورتی که اسکرول پیامها بالاتر باشد به آخر چت که شامل پیام جدید است اسکرول کند.
نکته: بعد از ارسال هر پیام باید EditText
خالی شود.

راهنمایی🔗
- جواب امیر برای هر پیام ما «بله» (
Bale
) هستش که میتوانیم از متد createSimpleMessag
در کلاس Contact
برای ساختن پیام فیک از طرف امیر استفاده کنیم.
- به این نکته دقت داشته باشید که پیامهایی که از سمت شما ارسال میشود فیلد
sender
آن در کلاس Message
برابر صفر هستند. (برای بهتر متوجه شدن این نکته، متد isIncoming
در کلاس Message
را نگاه کنید.)
ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.