فایل : دانلود فایل پروژه
شرکت Quera
به دنبال تولید اپلیکیشن موبایل اندروید برای سایت خود است، اولین قدم برای این منظور تولید صفحه ورود کاربران است. برای این منظور طراح گرافیکی این شرکت یک قالب اولیه برای این صفحه آماده کرده و بر روی ساختار XML
پیاده سازی کرده است، وظیفه شما آن است که فرآیند submit
را پیاده سازی نمایید. ابتدا باید کنترل صحت داده های ورودی بررسی شود. کنترل صحت داده ها به این صورت می باشد که:
- هر کدام از ورودی ها باید مقدار داشته باشد در غیر این صورت پیام راهنمایی درون آن به
Enter Email
یاEnter Password
با رنگ#FF0000
تغیر می کند.
-
مقدار وارد شده در ورودی
Email
باید آدرس یک ایمیل بر اساس استانداردRFC 5322
باشد. -
مقدار وارد شده در
Password
باید حداقل ۸ کاراکتر باشد، این کارکاتر ها می توانند حروف کوچک و بزرگ، عدد و علائم@#$%&
باشد که در هر پسورد حداقل یک حرف کوچک، یک حرف بزرگ، یک عدد و یکی از علائم مجاز باید حضور داشته باشد. -
در صورت مغایرت مقدار وارد شده درون هر ورودی با شرایط فوق پیام خطای
Password is not valid
یاEmail is not valid
در بالای صفحه و در قسمت تعیین شده نمایش داده می شود. توجه کنید که در صورت اشتباه بودن هر دو ورودی هر دو پیام باید نمایش داده شوند و با کاراکتر\n
از هم جدا شوند (ترتیب اهمیتی ندارد).
پس از بررسی صحت ورودی ها در صورت صحیح بودن آنها یک درخواست HTTP
به یک سرور خارجی ارسال می شود. این درخواست از نوع POST
می باشد که در بدنه آن یک JOSN
شامل کلید های email
و password
به همراه مقادیر وارد شده می باشد. این درخواست به آدرس quera.ir/accounts/login
ارسال می شود و پیام بازگردانی شده با فرمت HTTP
درون ResultActivty
نمایش داده می شود. برای ارسال این درخواست حتما از HttpURLConnection
استفاده نمایید.
برای پاسخ به این سوال ابتدا فایل زیپ مربوط به این سوال را دانلود نمایید، داخل این فایل یک پروژه اندروید وجود دارد، پس از انجام تغییرات فوق پروژه اندروید را دوباره زیپ نموده و بر روی سایت بارگذاری نمایید. توجه نمایید که بجز فایل های مشخص شده به دیگر فایل های موجود در پروژه دست نزنید.**
ساختار فایل ناقص پروژه برای دانلود (فایلهایی که باید تغییر دهید با ----> نمایش داده شده اند):
<Your-zip-name>.zip
└───LoginPage
├───app
│ ├───libs
│ └───src
│ ├───androidTest
│ │ └───...
│ ├───main
│ │ │ AndroidManifest.xml
│ │ ├───java
│ │ │ └───ir
│ │ │ └───quera
│ │ │ └───loginpage
│ │ │ MainActivity.java <----
│ │ │ ResultActivity.java <----
│ │ │
│ │ └───res
│ │ ├───drawable
│ │ ├───layout
│ │ │ activity_main.xml <----
│ │ │ activity_result.xml <----
│ │ │
│ │ ├───mipmap-hdpi
│ │ ├───mipmap-mdpi
│ │ ├───mipmap-xhdpi
│ │ ├───mipmap-xxhdpi
│ │ ├───mipmap-xxxhdpi
│ │ └───values
│ │ colors.xml
│ │ strings.xml
│ │ styles.xml
│ │
│ └───test
│ └───...
└───gradle
└───...
- تنها فایلهای موجود در آدرس زیر از پروژه شما استفاده خواهد شد بقیه فایلها از پروژه نمونه قرار داده شده خواهند بود. فایلهای اضافی شما قبل از داوری حذف میشود.
app/src/main/*
ساختار درختی فایل ارسالی:
<Your-zip-name>.zip
├───main
│ ├───java
│ │ └───ir
│ │ └───quera
│ │ └───loginpage
│ │ MainActivity.java
│ │ ResultActivity.java
│ └───res
│ ├───drawable
│ ├───layout
│ │ activity_main.xml
│ │ activity_result.xml
│ ├───mipmap-hdpi
│ │ ...
│ ├───mipmap-mdpi
│ │ ...
│ ├───mipmap-xhdpi
│ │ ...
│ ├───mipmap-xxhdpi
│ │ ...
│ ├───mipmap-xxxhdpi
│ │ ...
│ └───values
│ colors.xml
│ strings.xml
│ styles.xml
│
└───test
└───...
- توجه کنید که پروژه zip شده باید مستقیما در ریشه فایل zip قرار گیرد.
ارسال پاسخ برای این سؤال