از پارسکدرز بیشترین بهره را ببرید و رویای کاری خود را زندگی کنید.
چهار سال پیش منتشر شده
تعداد بازدید: 835
کد پروژه: 288797
شرح پروژه
با سلام خدمت برنامه نویسان اندروید
موضوع: ساخت یک اپلیکیشن یادآور (reminder) مدنظر است که بر اساس اسم وای فای های نزدیک به دستگاه و نیز بر اساس لیست کارها (که با مشخص شدن اسم آنتن wifi تعریف می شوند)، یک آلارم یادآوری پخش کند و پیامی را نمایش دهد. توضیح اینکه لیست کارها از طریق API از یک سایت مشخص و با فرمتی مشخص دریافت میشود.
نمونه تعریف یک تسک:
وقتی موبایل از محیط خانه خارج شد (آنتن وای فای با نام home از لیست آنتن های نزدیک حذف شد)، هشدار دهد که باید کلید برداشته شود. یا وقتی موبایل وارد محیط کار شد (آنتن وای فای با نام work به لیست آنتن های نزدیک اضافه شد) هشدار دهد که باید سیستم گرمایشی روشن شود.
جزئیات:
1. نرم افزار پس از نصب، به صورت autostart و بعد از هر بار startup دستگاه، به صورت سرویس اجرا می شود و همیشه اجرا می ماند.
2. هر 5 دقیقه یکبار، لیست تسک ها را از طریق API و با فرمتی مشخص (JSON) از آدرس سایتی مشخص دریافت می کند. (فرمت توافق خواهد شد).
3. لیست تسکها بسیار ساده است و هر تسک فقط شامل چهار پارامتر است: عنوان تسک، ساعت شروع، ساعت پایان، عدد تریگر، اسامی آنتن های وای فای.
عدد تریگر اگر 1 باشد، یعنی آلارم هشدار باید وقتی پخش شود که آنتن موردنظر به لیست آنتن های نزدیک اضافه شود (مثلا وقتی موبایل وارد محیط خانه شد).
عدد تریگر 2 یعنی آلارم هشدار باید وقتی پخش شود که آنتن موردنظر از لیست آنتن های نزدیک حذف شود (مثلا وقتی موبایل از محیط خانه خارج شد).
ساعت شروع و پایان هم بازه زمانی پخش یا عدم پخش آلارم را مشخص می کند، مثلا اگر ساعت شروع 9 و ساعت پایان 19 باشد، آلارم موردنظر فقط در این ساعات تریگر می شود و پخش می شود.
4. هشدار یک پنجره ی full screen یا یک popup است که یک دکمه snooze و یک دکمه stop و یک متن (عنوان تسک) در بالای آن دارد و یک فایل صوتی mp3 از قبل مشخص شده (در فولدری مشخص در کارت حافظه) را پخش می کند (با هماهنگی و طبق سلیقه ی برنامه نویس میتواند به صورت یک Notification مناسب که 2 دکمه دارد هم پیاده سازی شود). اگر دکمه snooze تپ شود، آلارم 5 دقیقه بعد دوباره پخش شده و پنجره نمایش داده می شود (بدون توجه به اینکه تریگر مجدد فراخوانی شود یا خیر). در این مدت 5 دقیقه، اگر مجددا تریگر همین آلارم فراخوانی شد، آلارم نمایش داده نمیشود چون snooze شده است. منظور از تریگر شرط پخش شدن آلارم است. نکته 1: در حالت snooze یک آلارم، اگر شرط تریگر هم از بین رفته بود، باز هم باید بعد از 5 دقیقه آلارم نمایش داده شود. نکته 2: اگر در حالت snooze باشد و تریگر برای یک تسک دیگر فراخوانی شود، باید آلارم تسک دیگر نمایش داده شود، به عبارت دیگر هر تسکی برای خودش به صورت مستقل فراخوانی و snooze می شود.
5. نرم افزار موردنظر برای اندرویدهای 10 و 11 نباید مشکلی داشته باشد و درحالت عادی نباید از حافظه خارج شود (مگر در حالتهای خاصی مثل power saving mode و...)
6. اینترفیس اصلی خود نرم افزار (یعنی وقتی آیکون نرم افزار تپ می شود) فقط شامل یک تاگل Disabled است که اگر فعال باشد یعنی هیچ آلارمی پخش نمی شود و اگر غیرفعال باشد یعنی آلارمها پخش می شوند. اینترفیس شامل هیچ گزینه دیگری برای نمایش تسکها و... نیست زیرا تسکها فقط از طریق API دریافت می شوند.
7. تحویل سورس کد قابل کامپایل الزامیست.
8. درمورد بند 2، تایم 5 دقیقه می تواند دقیق نباشد ولی باید حتما و نهایتا در ده دقیقه تسکها را دریافت کند. تسکها در فایل یا دیتابیس لوکال نرم افزار ذخیره می شود و درصورتیکه دریافت تسکها به هر دلیل با خطا مواجه شد (قطعی اینترنت، عدم پاسخ صحیح سرور و...) آخرین تسکهایی که در فایل یا دیتابیس لوکال نرم افزار ذخیره شده اند ملاک قرار میگیرد.
9. منظور از وای فای های نزدیک به دستگاه، وای فای هایی است که scan شده اند و سیگنال آنها وجود دارد (مثلا بالای 5 درصد است) و این scan شدن ربطی به وصل بودن به آنتن وای فای (connected)، یا حتی روشن بودن WiFi موبایل ندارد، و نرم افزار هر 1 دقیقه یکبار عمل scan را انجام می دهد (1 دقیقه نیازی نیست دقیق باشد ولی حداکثر باید هر 2 دقیقه یکبار بررسی شود)، و اگر وای فایی از لیست خارج شد، یا به لیست وارد شد، با اسامی آنتن های داخل تسکها مقایسه می کند و درصورت لزوم هشدار (آلارم) را فراخوانی می کند.
10. نرم افزار می بایست به صورت بهینه پیاده سازی شده باشد و اصطلاحاً battery-draining نباشد و فقط بابت نمایش هشدار (آلارم) اسکرین را روشن کند، و در مواقع دیگر (مثلا هنگام WiFi scan یا read tasks from api) اسکرین روشن نشود (اگر عمل wake انجام می شود اسکرین نباید روشن شود).
مهارت ها و تخصص های مورد نیاز
مبلغ پروژه
1,300,000 تومان
مهلت برای انجام
20روز
وضعیت مناقصه
انجام شده
درباره کارفرما
عضویت هفت سال پیش
نیاز به استخدام فریلنسر یا سفارش پروژه مشابه دارید؟
قادر به انجام این پروژه هستید؟
متأسفانه مهلت ارسال پیشنهاد این پروژه به پایان رسیده و پروژه بسته شده است؛ اما فرصتهای متعددی در سایت موجود میباشد.
به رایگان یک حساب کاربری بسازید
مهارتها و تخصصهای خود را ثبت کنید، رزومه و نمونهکارهای خود را نشان دهید و سوابق کاری خود را شرح دهید.
به شیوهای که دوست دارید کار کنید
برای پروژههای دلخواه در زمان دلخواه پیشنهاد قیمت خود را ثبت کنید و به فرصتهای شغلی منحصر به فرد دسترسی پیدا کنید.
با اطمینان دستمزد دریافت کنید
از زمان شروع کار تا انتهای کار به امنیت مالی شما کمک خواهیم کرد. وجه پروژه را از ابتدای کار به امانت در سایت نگه خواهیم داشت تا تضمین شودکه بعد از تحویل کار دستمزد شما پرداخت خواهد شد.
میخواهید شروع به کار کنید؟
یک حساب کاربری بسازید
بهترین مشاغل فریلنسری را پیدا کنید
رشد شغلی شما به راحتی ایجاد یک حساب کاربری رایگان و یافتن کار (پروژه) متناسب با مهارتهای شما
است.
پیدا کردن کار (پروژه)
تماشای دمو روش کار