واسه خودم

واسه خودم

واسه خودم

واسه خودم

آموزش برنامه نویسی اندروید

 


سلام من لی بریملو هستم و خوش آمدید به آموزش اساسی توسعه نرم افزار اندروید با جاوا.

در این درس من به شما یاد میدم که چطور از قدرت جاوا برای ساختن نرم افزار های اندروید استفاده کنید.

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

چطور از رابط های کاربری مختلف استفاده کنیم برای درست کردن متن، لیست و طرح بندی های دلخواه.

من اهمیت پشتیبانی از سایزهای مختلف صفحه و ضخامت اشیا رو به شما شرح خواهم داد.

همچنین نحوه استفاده از قالب ها و سبک و سیاق های دلخواه.

و قدم به قدم به شما یاد خواهم داد که  چطوری به برنامتون صدا و تصویر اضافه کنید.

و اینکه چطور اونها رو ‪"‬مکان آگاه‪"‬ کنید به وسیله ترکیبی از جی پی اس و نقشه ها.

پس راحت بشینید و لذت ببرید از : آموزش اساسی توسعه نرم افزار اندروید با جاوا.


برگرفته شده از AndroidCode.ir



 

 

 

  • مفهوم و تصور کلی از برنامه نویسی شی گرا (مفاهیمی مثل کلاس و ارث بری و ... )
  • یه تجربه هایی از کار با جاوا (خیلی هم لازم نیست ماهر باشید فقط قبلا کار کرده باشید)
  • تجربه کار با ایکلیپس خیلی مفیده چون تمام برنامه نویسی ها در محیط ایکلیپس Eclipse انجام می شه ولی اگر هم تجربه نداشتید مشکلی پیش نمیاد
  • آشنایی با قابلیت های اندروید یعنی تا حالا با گوشی اندروید کار کرده باشید (حتی اگه خودتون ندارید با گوشی دوستتون کار کرده باشید و آشنا باشید)

 

 

 


 

متن کامل این فیلم (ترجمه شده  به فارسی) :

 

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

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

حالا شما باید یه تجربه هایی از کار با جاوا داشته باشید. دارم می گم یه تجربه هایی، چون خودمم خیلی تو جاوا متخصص نیستم، در واقع من یه پیش زمینه ای از اکشن اسکریپت فلش دارم، ولی تا زمانی که شما یه تجربه هایی با زبان های برنامه نویسی "اکم-اسکریپت" پایه داشته باشید مشکلی نخواهید داشت و هر چقدر هم بیشتر جاوا بلد باشید این دوره (درس) رو خیلی راحتتر پیش میبرید

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

یه مطلب دیگه ای که میتونه خیلی براتون مفید باشه، آشنایی با خود اندرویده، حالا یا خودتون یه گوشی اندروید دارید یا تو گوشی دوستتون دیدید….فقط یه دانش و آشنایی درباره قابلیت خود سیستم عامل اندروید

 

پس یه بار دیگه، با همه این پیش دانسته های پایه، شما کاملا آماده اید که این دوره رو بگذرونید :)


راحل نصب "بسته توسعه نرم افزار" SDK برای کاربران ویندوز


 

۱. دانلود "بسته توسعه نرم افزار" یا SDK از این آدرس، البته گوگل ایران رو تحریم کرده و با IP ایرانی به شما اجازه ورود به این سایت رو نمیده به همین خاطر جدیدترین نسخه اش رو در ادامه برای دانلود گذاشتم.

همون طور که مشاهده می کنید چند تا گزینه برای دانلود وجود داره : برای کاربران ویندوز ، مک و لینوکس

برای کاربران ویندوز دانلود فایل .exe پیشنهاد شده پس همون رو دانلود کنید.

دانلود SDK برای کاربران ویندوز (فایل .exe)

 

۲. برای استفاده از SDK اندروید به (JDK (Java Development Kit احتیاج دارید در نتیجه اگه قبلا نصب نکرده باشید ازتون می خواد که اول اونو نصب کنید بعد SDK اندروید نصب خواهد شد.

اگه قبلا نصب کردید به مرحله شماره ۴ برید.

 

۳. برای دانلود باید به این آدرس برید ولی چون شرکت اوراکل ایران رو تحریم کرده، از این آدرس دانلود کنید.

۴.فایل .exe دانلود شده رو اجرا کنید و همه گزبنه ها رو در حالت پیش فرض نگه دارید (هی Next بزن تا برسی به آخرش :دی)

 

۵. حالا دوباره اون فایل .exe مربوط به SDK (مرحله ۱) رو اجرا میکنی، الان دیگه خودش JDK  رو پیدا میکنه

۶. پیشنهاد میشه همه گزبنه ها رو در حالت پیش فرض نگه دارید و Next رو بزنید ، آخرش هم در حالی که تیک این گزینه "Start SDK Manager" خورده روی Finish کلیک میکنید.

 

۷. حالا SKD Manager اجرا میشه و شروع می کنه به گرفتن (fetching) اطلاعاتی که لازمه دانلود کنید، ولی چون تحریم شدیم ممکنه پیغام خطا بده که نتونست fetching رو کامل انجام بده یا هیچ پیغامی نده، در هر صورت باید SDK Manager تون اینطوری باشه.



مراحل نصب بسته بندی Android SDK platform

دوشنبه, ۲۸ آذر ۱۳۹۰، ۱۲:۱۵ ق.ظ

 

1.برنامه SDK Manager رو اجرا کنید (بهتره راست کلیک کنید و گزینه Run as administrator رو انتخاب کنید)
 
۲.وقتی SDK Manager رو باز می‌کنی خودش میره دنبال بسته های دردسترس و لیستش رو نشون می ده، و چون گوگل ایران رو تحریم کرده با IP ایرانی لیست رو براتون نشون نمی ده ولی فایلی که لازمه دانلود کنید رو در ادامه براتون گذاشتم.
*هر کدوم از نسخه های SDK مخصوص یک نسخه از اندرویده مثلا gingerbread  یعنی Android 2.3.3 و یا Froyo یعنی Android 2.2...دانلود نسخه های مختلف اس دی کی ‌SDK
 
۳.وقتی SDK رو دانلود کردید برای ادامه‌ی کار باید پوشه ی platform-tools رو هم داخل فولدر مربوط به SDK Manager قرار بدید (کنار فولدر platforms و tools و اینا) و یادتون باشه از حالت فشرده (zip) خارج کنید.

دانلود platform-tools برای کاربران ویندوز (Rev. 13) - حجم 10.65 MB

دانلود platform-tools برای کاربران مک (Rev. 13) - حجم 10.9 MB

دانلود platform-tools برای کاربران لینوکس (Rev. 13) - حجم 10.49 MB

 

۴.با توجه به نرم افزاری که می خواید بنویسید باید یکی از نسخه های اندروید رو دانلود کنید، اگه ویژگی خاصی که مربوط به نسخه های بالاتر نیست توی برنامتون قرار نیست استفاده کنید، پیشنهاد میشه SDK platform Android 2.1  رو دانلود کنید تا تعداد کاربران بیشتری بتونن از برنامتون استفاده کنن.
(مثلا اگه برنامتون رو با Android 2.3.3 بسازید، کسانی که Android 2.2 دارن (یا مدل پایین تر) نمی تونن از برنامه شما استفاده کنن پس اگه ویژگی خاصی از نسخه ی بهتر رو استفاده نکردید، Android 2.1 رو دانلود کنید)
API-7 که مربوط به Android 2.1 هست، API-8 که مربوط به Android 2.2 هست و API-10 که مربوط به Android 2.3 هست رو براتون آپلود کردم :

دانلود API-7 [حجم ۶۷ مگابایت]

دانلود API-8 [حجم ۷۴ مگابایت]

دانلود API-10 [حجم ۸۲ مگابایت]

دانلود API-11 [حجم ۱۰۰ مگابایت]

برای استفاده از این بسته ها باید بعد از دانلود از حالت zip خارجشون کنید و داخل فولدر platforms در پوشه‌ی مربوط به SDK بذارید. مثلا برای این عکسی که گذاشته شده فولدر platforms باید در مسیر C:\Useres\q\AppData\Local\Android\android-sdk\platforms، پیدا بشه (اگه وجود نداره خودتون یه فولدر با این اسم بسازید) و بعد فولدر android-7 رو توش قرار بدید.

 
در ضمن اگه تمایل دارید Sample رو هم دانلود کنید، چون حاوی یک پروژه ی مثال از خود شرکت گوگل هست که می‌تونه خیلی کمکتون کنه :

دانلود API-7 Samples [حجم ۷ مگابایت]

برای استفاده از این بسته ها باید بعد از دانلود از حالت zip خارجشون کنید و داخل فولدر samples در پوشه‌ی مربوط به SDK بذارید. مثلا برای این عکسی که گذاشته شده فولدر samples باید در مسیر C:\Useres\q\AppData\Local\Android\android-sdk\samples، پیدا بشه (اگه وجود نداره خودتون یه فولدر با این اسم بسازید) و بعد فولدر android-7 رو توش قرار بدید.

 

۵.وقتی بسته های مورد نظرتون رو دانلود کردید، دوباره SDK Manager رو اجرا کنید، باید شبیه این عکس باشه.
 

ادامه آموزش : نحوه ایجاد دستگاه مجازی



 

1.وقتی در طول توسعه نرم افزاتون، احتیاج به آزمایش (تست) برنامتون دارید، حتما نیاز به یه دستگاه مجازی (virtual device) یا شبیه ساز (emulator) دارید. خوب برای ساختن یه دستگاه مجازی اول برنامه مدیریت اس دی کی رو اجرا کنید و از ستون سمت چپ قسمت virtual device رو انتخاب کنید. (در نسخه‌های جدید ستون سمت چپ حذف شده، برای ساختن دستگاه مجازی از منوی بالای برنامه مدیریت اس‌دی‌کی، Tools و بعد هم ...manage AVDs رو انتخاب کنید - تصویر راهنما - )

۲.از ستون سمت راست گزینه new رو انتخاب کنید. در پنجره باز شده باید اسمی برای این دستگاه مجازیتون انتخاب کنید.

 

۳.حالا در قسمت هدف (target) باید اون نسخه ای از API رو انتخاب کنید که قبلا دانلود کردید. (توصیه می شه نسخه ۲.۱ رو انتخاب کنید تا نرم افزارتون روی دستگاه های بیشتری اجرا بشه)

 

۴.این شبیه ساز همه چیز رو شبیه سازی می کنه، باید حجم کارت حافظه (SD card) رو هم بهش بدید (پیشنهاد میشه عدد 10000 رو بنویسید)

۵. گزینه ی snapshot رو enabled کنید. این کار (که خیلی هم واجبه :دی) باعث میشه تا هر موقع شبیه ساز رو بستید یه عکس از آخرین وضعیت می گیره و دفعه بعد که خواستید اجراش کنید خیلی سریعتر بارگزاری میشه.

 

۶.بعدش باید براش یه وضوح تصویر (resolution) مناسب تعیین کنید. (وقتی که خواستیم کارمون رو تو وضوح تصویرهای مختلفی امتحان کنیم برمیگردیم به این قسمت و چند تا دستگاه مجازی با وضوح تصویرهای مختلف می سازیم، ولی فعلا بذارید همون پیش فرضش باشه)

۷.با توجه به سیستمی که استفاده می کنید یه خورده درست کردنش طول می کشه، پس صبر کنید تا تموم بشه.

۸.حالا برای بررسی اینکه آیا دستگاه مجازی درست کار می کنه یا نه، روی اون دستگاه مجازی که ساختید کلیک کنید و از ستون سمت راست گزینه start رو انتخاب کنید

۱۰.حالا ازتون می پرسه که شبیه ساز رو در چه اندازه ای می خواید اجرا کنید (با توجه به وضوح تصویرتون، عدد مناسب وارد کنید) مثلا اینجا اندازه ی ۸۰۰ در ۴۸۰ براش بزرگ بوده گزینه ی scale display to real size رو تیک زده و اندازه دلخواهش رو وارد کرده. در ضمن گزینه ی wipe user data رو میتونید تیک دار کنید تا اگه قبلا از این شبیه ساز استفاده شده باشه (یا حالا مثلا بعدا که دوباره خواستید برای یه پروژه دیگه ازش استفاده کنید) تمام اطلاعات اضافی ذخیره شده رو پاک می کنه و همه چیز رو به تنظیمات اولیه (کارخونه) بر میگردونه.

دو تا گزینه ی بعدی رو هم بذارید تیک دار بمونه (مربوط به توضیحات شماره ۵)

۱۱.حالا وقتی روی Lunch کلیک کنید، شبیه ساز شروع به کار می کنه (البته وقتی برای اولین بار اجراش می کنید خیلی کند پیش می ره از دفعه بعد درست می شه به خاطر ویژگی که تو شماره ۵ تیک دار کردید)

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

 

ادامه آموزش این پست برای کاربران مک



مراحل نصب ایکلیپس (Eclipse) روی ویندوز

دوشنبه, ۲۶ دی ۱۳۹۰، ۰۷:۰۶ ب.ظ

تماشای بر خط (لینک مستقیم) فیلم آموزش مراحل نصب ایکلیپس در ویندوز

نسخه ی pdf این آموزش [2.13 مگابایت]

 

۰.قبل از نصب ایکلیپس باید اس دی کی رو نصب کرده باشید (راهنمای نصب SDK)

۱.ایکلیپس محیطیه که برای توسعه اندروید ازش استفاده می کنید. (به جای استفاده از notepad برای نوشتن کدها و  command line برای کامپایل کردن، خیلی راحتتره که از ایکلیپس استفاده کنید) برای نصب ای‌کلیپس به سایت اصلیش (اینجا) برید و نسخه‌ی مناسب سیستمتون رو دانلود کنید. برای این کار روی دکمه ی زرد بالا سمت راست صفحه کلیک کنید.

 

۲.با توجه به اینکه SDK رو نصب کردید، حتما JDK روی سیستمتون نصب هست. حالا برای توسعه اندروید به یه نسخه ی ساده از ایکلیپس احتیاج داریم. پس همون اولین گزینه (Eclipse IDE for Java Developers) رو انتخاب کنید. و با توجه به سیستمتون روی یکی از موارد 32 بیتی یا 64 بیتی کلیک کنید.

 

۳.روی لینک کمکی که براتون آورده کلیک کنید تا دانلود شروع بشه.

 

۴.فایل دانلود شده یه فایل zip هست. روش دوبار کلیک کنید تا داخلش بشید.

چون ایکلیپس یه نرم افزار بر پایه‌ی جاواست یه فایل نصب مثلا با فرمت .exe نداره. برای همین پوشه‌ی eclipse که داخل فایل زیپ هست رو cut کنید.

 

۵.از درایو C (درایوی که ویندوز توش نصب شده) به پوشه‌ی Program files برید و paste کنید. (برای اینکار به اجازه‌ی ادمین احتیاج دارید، اگه کاربر ادمین (administrator user) هستید، continue بزنید) - البته اگه خواستید می تونید این مرحله رو انجام ندید

 

۶.حالا وقتی روی پوشه‌ای که paste کردید کلیک کنید، فایل اجرایی ایکلیپس رو می‌بینید. روش کلیک کنید تا برنامه اجرا بشه.

 

۷.ممکنه این پیغام رو بده که صحت و سقم این برنامه معلوم نیست، گزینه‌ی Always ask before opening this file رو غیر فعال کنید تا هر دفعه ازتون نپرسه. و روی Run کلیک کنید تا برنامه اجرا بشه.

 

۸.وقتی روی برنامه کلیک می‌کنید، ازتون می‌پرسه که چه محلی رو برای ذخیره ی پروژه هاتون در نظر گرفتید؟

اگه نمی خواید هردفعه که ایکلیپس رو باز می‌کنید این سوال رو ازتون بپرسه، گزینه‌ی use this as the default and don't ask again رو فعال کنید.

 

۹.برای اولین بار که ای‌کلیپس رو اجرا می‌کنید، یه صفحه‌ی خوش آمد میاره، از تو این صفحه روی Workbench کلیک کنید

 

۱۰.خوب اینم از صفحه‌ی ایکلیپس، نصبش تموم شد.

 

ادامه این آموزش در این پست


مراحل نصب «ابزار توسعه اندروید» ADT در ایکلیپس

چهارشنبه, ۲۸ دی ۱۳۹۰، ۰۳:۳۲ ب.ظ

تماشای برخط (لینک مستقیم) فیلم آموزش مراحل نصب «ابزار توسعه اندروید» ADT در ایکلیپس

دریافت نسخه pdf این آموزش [3.22 مگابایت]

 

۱.برای نصب ADT باید به این آدرس برید، که البته چون گوگل ایران رو تحریم کرده و  به IP ایرانی اجازه ورود به این سایت رو نمی‌ده. اون چیزی که لازمه از اینجا دانلود کنید رو براتون آپلود کردم (نسخه 20.0.2 با حجم ۱۲ مگابایت). اگه می‌خواید از خود سایت استفاده کنید، تقریبا به انتهای صفحه برید جایی که نوشته Downloading the ADT Plugin، یه URL (آدس اینترنتی) اونجا هست کپی‌ش کنید.

 

۲. به برنامه ایکلیپس برید و از منوی بالاش Help رو بزنید بعد هم Install New Software.

 

۳. اگه تو مرحله قبل، ADT رو به صورت zip شده دانلود کردید،  روی Add کلیک کنید، گزینه Archive رو بزنید، به آدرسی برید که فایل zip شده رو ذخیره کردید، (همون طوری که zip هست و Extract یا  UnArchive اش نکنید) فایل رو انتخاب کنید، open رو بزنید، یه اسم براش بذارید و  OK رو بزنید.

اگه هم تو مرحله قبل آدرس اینترنتی رو کپی کردید، روی Add کلیک کنید، یه اسم براش بذارید، لینک رو paste کنید و ok رو بزنید و منتظر بمونید تا لیست رو بارگزاری کنه.

 

۴.وقتی لیست ابزار توسعه اومد، گزینه Developer Tool رو با تمام زیر شاخه هاش انتخاب کنید (چون همه‌ش رو احتیاج داریم)‌. next بزنید. بعد یه صفحه میاد که اون چیزایی که می خواید دانلود کنید رو مرور می‌کنه Next رو بزنید.

 

۵. باید جواز و مدارک اونا رو قبول کنید پس I agree with terms of the license agreement رو انتخاب کنید و Finish رو بزنید.

 

۶. حالا شروع به نصب می‌کنه، و با این پیغام روبرو می‌شید که به شما هشدار می‌ده دارید مواردی رو نصب می‌کنید که ناشناخته هستن و ممکنه خطرناک باشن، مهم نیست OK رو بزنید.

 

۷.وقتی نصبش تموم شد، می تونید همون موقع شروع به کار کنید ولی خیلی توصیه می‌شه که یه بار برنامه رو از اول اجرا کنید، پس گزینه Restart Now رو انتخاب کنید (طولی نمی‌کشه)

 

۸.خوب وقتی دوباره ایکلیپس باز شد، سریعترین راه برای اینکه چک کنید همه چیز درست نصب شده اینه که باید قسمتی به نوار بالای برنامه اضافه شده باشه که شامل دستوراتی برای ساختن برنامه اندرویده. (تو تصویر مشخصه)

کاربرد دکمه هایی که اضافه شده (از چپ به راست به ترتیب)

باز کردن برنامه مدیریت اس دی کی (SDK manager)

ساختن یه پروژه اندروید جدید

ساختن یه پروژه‌ی آزمایشی

ساختن یه فایل XML اندروید

 

۹.جالا بیاید یه کم محیطی که قراره باهاش کار کنیم رو اصلاح کنیم و تغییر بدیم. مثلا قسمت Task list که اول ستون سمت راسته به درد نمی‌خوره جا زیادی گرفته، ضربدرشو می‌زنیم. ما در کار با پروژه های اندرویدی خیلی به پنل ویژگی‌ها (Property Panel) احتیاج داریم و باید دم دست باشه، پس روی window بعد هم Show view میریم، اگه توی لیست بود که انتخابش می کنیم وگرنه other رو بزنید تا پیداش کنیم.

 

۱۰. تو قسمت General انتخابش کنید و OK بزنید.

 

۱۱.الان پنل ویژگی‌ها اون پایین اومده، برای اینکه باهاش راحتتر کار کنیم، می‌کشیم (Drag) می‌بریمش پیش OutLine (که تو ستون سمت راسته)

 

۱۲.اون پنل پایین رو هم خیلی احتیاج نداریم می تونید کوچیکش کنید (Minimize).

 

۱۳.خوب اگه دلتون می‌خواد ستون سمت راستی رو هم کوچیک کنید تا جا برای کد نوشتن وسیع‌تر بشه.

حالا کار مهمی که باید انجام بدیم اینه که به ایکلیپس بگیم که اندروید اس‌دی‌کی کجا هست (تا ایکلیپس بتونه بهش لینک بشه). برای این کار از نوار بالا window بعد هم preferences. (مک : از نوار بالا روی Eclipse کلیک کنید و بعد preferences)

 

۱۴.از ستون سمت چپ روی Android کلیک کنید، جلوی قسمتی که نوشته SDK Location و محل اس‌دی‌کی رو می‌خواد، روی Browse بزنید. به مکانی برید که اس‌دی‌کی رو ذخیره کردید. پوشه‌ی android-sdk رو انتخاب کنید و ok بزنید.

 

۱۵. روی Apply کلیک کنید. حالا باید نسخه هایی رو که دانلود کردید رو نشون بده، اگه همه چیز مرتبه، OK بزنید.

 

۱۶. حالا اگه رو دکمه‌ی باز کردن برنامه مدیریت اس دی کی (تو مرحله شماره ۸ گفته شده) کلیک کنید، مدیریت اس‌دی‌کی رو اجرا می‌کنه (اگه قبل از مرحله ۱۳ روش می‌زدید پیغام خطا می‌داد که محل اس‌دی‌کی رو نمی‌دونه)

 

۱۷.بعد از انجام تمام این کارا، شما الان رسما می‌تونید توسعه اندروید (کد زدن) رو آغاز کنید.


برگرفته شده از AndroidCode.ir

آماده کردن دستگاه اندروید (گوشی) برای توسعه

چهارشنبه, ۲۸ دی ۱۳۹۰، ۱۱:۱۷ ب.ظ

تماشای برخط (لینک مستقیم) فیلم آماده کردن دستگاه مجازی برای توسعه

دریافت نسخه pdf این آموزش [348 کیلوبایت]

 

وقتی می‌خواید که نرم افزارتون رو روی دستگاه واقعی اندروید (گوشی اندرویدی) امتحان کنید، باید یه سری نکات رو رعایت کنید تا برنامتون اجرا بشه.

خوب قبل از اینکه نشونتون بدم باید بگم که سیستم عامل گوشی های اندروید،  ممکنه یه تفاوتهای کوچیکی باهم داشته باشن و خیلی کم پیش میاد  دقیقا مثه همین شبیه سازی که می‌بینید باشه، مثلا گوشی های HTC یا Motorola و ... سیستم عاملشون یه تفاوتهایی داره و دقیقا همون نسخه‌ی خام گوگل رو استفاده نمی‌کنن. ولی در کل محلی که تنظیمات (Setting) قرار می‌گیره معمولا یکیه.

۱.خوب با توجه به این توضیحات، توی گوشی اندرویدتون منو (Menu)‌ رو بزنید. بعد هم Settings.

 

۲.بعد هم Applications.

 

۳. بعد هم Development.

خوب از همه مهمتر اینه که گزینه‌ی USB Debugging فعال باشه تا وقتی با کابل گوشی رو به کامپیوتر وصل می‌کنید بتونید به راحتی نرم افزارتون رو روش امتحان کنید.

گزینه‌ی سوم یعنی Allow Mock Locations زمانی به درد میخوره که تو برنامتون از امکانات جی‌پی‌اس (مکان یاب) استفاده کرده باشید. اگه این گزینه فعال نشده باشه اجازه نمی‌ده برای تست کردن برنامتون از مکان‌های جعلی استفاده کنید. مثلا احتیاج دارید ببینید تو یه شهر دیگه اون قسمتی از برنامتون که مربوط به مکان فرد می‌شه، چطور عمل میکنه. میتونید با فعال کردن این گزینه تو شهرخودتون باشید ولی جی‌پی‌اس نشون بده یه شهر دیگه اید تا اینطوری برنامتون رو امتحان کنید.

 

ادامه آموزش در این پست


برگرفته شده از AndroidCode.ir

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

جمعه, ۳۰ دی ۱۳۹۰، ۱۲:۱۸ ب.ظ

تماشای برخط (لینک مستقیم)‌ فیلم «نمای کلی از توسعه اندروید»

 

اول بریم سراغ معماری اندروید :

  • اندروید روی لینوکس ۲.۶ سوار شده.
  • با یه ماشین مجازی به اسم دالویک (Dalvik) که مخصوص موبایل طراحی و بهینه سازی شده، کار می کنه.
  • مرورگر متحدی بر پایه موتور وب کیت (Webkit) داره.
  • گرافیکش با اپن‌جی‌ال ای‌اس (OpenGL ES) بهینه سازی شده.
  • از پایگاه داده‌ی سیکوآل لایت (SQLite) به عنوان ساختار ذخیره سازی داده ها استفاده میکنه.

حالا خیلی سریع به نسخه های مختلف اندروید می پردازیم

  • اندروید ۲.۰ \ ۲.۱ ایکلر (Eclair)
  • اندروید ۲.۲ فرویو (Froyo)
  • اندروید ۲.۳ جینجربرد (Gingerbread) - مخصوص موبایل
  • اندروید ۳.۰ هانی کوم (HoneyComb) - مخصوص تبلت ها
  • اندروید ۴.۰ آیس کریم سندویچ (IceCream Sandwich) - هم برای موبایل هم تبلت

 

حالا نگاهی می اندازیم به بنیاد برنامه‌های اندروید :

  • برنامه‌های اندروید به زبان برنامه نویسی جاوا نوشته می‌شه.
  • برنامه‌های کامپایل شده در فایل‌هایی با پسوند apk ذخیره می‌شن (apk = android package file)
  • هر برنامه‌ای در سندباکس (SandBox) جداگانه‌ای اجرا میشه که از بقیه‌ی برنامه‌ها ایزوله‌اش می‌کنه و هر برنامه در پروسه‌ی لینوکسی خودش اجرا می‌شه
  • هر برنامه‌ای شامل فایل‌‌های جزئی (component)، فایل‌های ظاهری (manifest) و منابع (resources) میشه.
  • فایل‌های جزئی شامل :
  • فعالیت (Activities)
  • خدمات (Services)
  • ارائه دهنده‌ی محتوا (content provider)
  • گیرنده‌ی پخش (broadcast receiver)

 بیاید یه خورده در مورد همین موارد آخر بیشتر یاد بگیریم.

 

  • فعالیت (Activities)
    • ‎یه فعالیت کارش اینه که که یه صفحه نمایش رو با رابط کاربری (UI) نشون بده. (مثلا کاربر می خواد ایمیل هاش رو چک کنه، همون صفحه ای که لیست ایمیل هاش رو نشون می ده یه فعالیته، وقتی رو ایمیل کلیک میکنه یه فعالیت دیگه شروع میشه که باعث میشه کاربر یه صفحه‌ی دیگه رو ببینه، وقتی می خواد ایمیل بفرسته یه صفحه‌ی دیگه براش باز میشه که یه فعالیت دیگه است)
    • ‎اگثر برنامه ها از بیش از یک فعالیت استفاده می کنن.
    • ‎وقتی یک فعالیت شروع میشه، به پشته‌ی بازگشت (back stack) هل داده میشه. (push میشه) - خوب مثلا وقتی کاربر اولین صفحه‌ی یه برنامه رو باز می کنه، بعد جایی کلیک میکنه و فعالیت دیگه ای باز میشه، فعالیت قبلی متوقف میشه (داخل پشته هل داده میشه) و فعالیت جدید روی قبلی شروع به کار میکنه، وقتی کاربر دکمه بازگشت () رو میزنه، فعالیت فعلی رو متوقف می کنه (میبنده) و فعالیت قبلی رو از همون جایی که متوقف کرده بود، اجرا میکنه. (در واقع از تو پشته پاپ میکنه) -
    • ‎رابط کاربری با XML یا مستقیما از خود جاوا ساخته میشه.
    • ‎میتونید طول عمر یه فعالیت رو با توابع مختلفی زیرنظر داشته باشید، توابعی مثه ()onStart یا ()onPause. تا روند اجرای هر فعالیتی رو کنترل کنید.
       
  • خدمات (Services)
    •  خدمات نقش کارهایی رو ایفا می کنن که در پشت صحنه باید انجام بشه.
    • خدمات شامل هیچ رابط کاربری‌ای نیستند.
    • برای کارهایی مثه عملیات اینترنتی (شبکه ای) یا پخش موسیقی مناسبند.
    • خدمات کاملا مستقل از جزئی که اونا رو ساخته، اجرا میشن. (مثلا اگه یه فعالیتی داشته باشیم که یه خدماتی رو اجرا کنه، اگه اون فعالیت رو ببندیم، اون خدمات هنوز در حال اجرا شدن هستن و مستقل از بقیه اجزا کار می کنن)
    • خدمات می تونن با استفاده از برنامه‌های دیگه محدود بشن، البته باید اون برنامه‌ها اجازه محدود کردن خدمات رو داشته باشن. (وقتی خدمات رو می‌سازین می تونین تعیین کنید که مثلا با هر برنامه ای میتونه این خدمت رو محدود کنه)

 

  • ارائه دهنده‌ی محتوا (content provider)
    • کارشون ذخیره و بازیابی داده هاست و اینکه داده ها رو برای همه برنامه ها قابل دسترسی کنن.
    • تنها راه برای اشتراک گزاری داده ها بین برنامه های مختلفه (چون به طور پیش فرض، برنامه ها راهی برای اشتراک گزاری داده‌شون به برنامه‌های دیگه رو ندارن)
    • یک URI عمومی منتشر میکنه که به طور منحصر به فرد مجموعه‌ی داده‌هاش رو شامل میشه. (مثلا اگه بخوایم یه سری از اطلاعاتمون رو به صورت عمومی در اختیار بقیه‌ی برنامه‌ها قرار بدیم، اونها رو در یک «ارائه دهنده محتوا» میذاریم.)
    • این داده ها به سادگی از طریق جدول هایی به مدل پایگاه داده منتشر میشن.
    • خود اندروید شامل یه عالمه «ارائه دهنده» است، مثه رسانه‌ها، دفترتلفن و... 

 

 

  • گیرنده‌ی پخش (broadcast receiver)
    • گیرنده‌ی پخش ساخته شده تا به اعلامیه‌های درون سیستمی پاسخگو باشه.
    • مثلا وقتی صفحه خاموش میشه، اندروید یه گیرنده میفرسته تا برنامه هایی که در حال اجرا هستن بفهمند که صفحه خاموش شده و برنامه رو در حالت تعلیق نگه دارن یا ببندن یا هر کار دیگه ای که باید بکنن، یا مثلا وقتی باتری داره تموم میشه و .... - پس وقتی برنامه‌ای رو می‌سازیم باید حواسمون باشه یه گوش دهنده (listener) بزاریم که اگه همچین اتفاقاتی افتاد، برنامه، یه کار خاصی رو انجام بده-
    • برنامه‌ی خود شما هم میتونه فرستادنده هایی رو بفرسته تا برنامه های دیگه بهش جواب بدن.
    • گیرنده های پخش شامل هیچ رابط کاربری ای نیستند.
    • گیرنده ها می تونن به نوار وضعیت (status bar)، اخطار (notification) بفرستن تا به کاربر هشدار بدن.

 

 

فایل های ظاهری اندروید

  • هر برنامه ای باید یک فایل AndroidManifest.XML در ریشه دایرکتوریش داشته باشه.
  • کار این فایل اینه که به سیستم اندروید درباره برنامه توضیحاتی رو ارائه بده.
  • این فایل، اجزائی رو که در برنامه به کار می‌برید رو توصیف می کنه. (اجزا مثه فعالیت ها، خدمات، گیرنده ها و ارائه دهنده ها)
  • اجازه هایی (permission)‌ که برای اجرای برنامه باید از کاربر گرفته بشه رو اعلام می کنه. (احتمالا تا حالا برنامه هایی رو دیدید که قبل از نصب از شما یه سری اجازه میگیرن برای دسترسی به قسمت های مختلف گوشی).
  • این فایل، پایین ترین نسخه‌ی اندرویدی (API) که برنامه می تونه روش اجرا بشه رو اعلام می کنه.

 

 

مواردی که تا اینجا بررسی کردیم یک چکیده از توسعه اندروید بود و اگه جایی رو خوب متوجه نشدید نگران نباشید، وقتی وارد کار بشیم و تمرین کنیم حتما خوب متوجه خواهید شد.


برگرفته شده از AndroidCode.ir

ایجاد پروژه جدید و درک ساختار آن

دوشنبه, ۲۷ شهریور ۱۳۹۱، ۰۶:۰۲ ب.ظ

خوب بعد از تمام مراحل اولیه ای که انجام دادیم، وقتش رسیده که یاد بگیریم چطور یه پروژه‌ی اندروید بسازیم. برای این کار برنامه ایکلیپس رو باز کنید.

۱.برای ساختن یه پروژه قبلا یه راه طولانی بوده، اما الان می خوایم از راه سریعتری استفاده کنیم.فقط  کافیه از ابزاری که بعد از نصب ADT تو ایکلیپس اضافه شد استفاده کنید. (راهنمای نصب ADT و ابزار اندروید در ایکلیپس). همون طور که قبلا گفته شد دکمه‌ای برای ساختن پروژه جدید در اندروید وجود داره. (این عکس) روش کلیک کنید. خوب حالا باید مشخصات پروژه تون رو تعیین کنید.

اولین گزینه اسم برنامه است، (همون اسمی که تو play store خواهد بود و همین طور توی لیست برنامه ی گوشی)

فیلد بعدی اسم پروژه‌ایه که می‌خواید بسازید و فقط تو محیط ایکلیپس ازش استفاده می‌شه و می‌تونه همون اسم واقعی برنامه‌تون باشه.

فیلد بعدی اسم پکیج یا بسته‌ی برنامه‌تونه و package name معمولا برعکس دومین سازنده‌ی برنامه است. باید حواستون باشه که این اسم خیلی مهمه چون وقتی می‌خواید برنامه‌‌تون رو به روز رسانی کنید تنها راهی که سیستم اندروید متوجه می‌شه این آپدیت مربوط به کدوم نرم‌افزاره از همین طریقه. و باید توی این دنیای برنامه‌ها هر برنامه‌ای package name مخصوص خودش رو داشته باشه.

در قسمت بعدی باید نسخه‌ی اس دی کی مورد نظرتون رو انتخاب کنید. برای این کار پیشنهاد میشه کمترین API levelای که برنامتون میتونه باهاش کار کنه رو انتخاب کنید، مثلا اگه از هیچ ویژگی خاص جینجربرد استفاده نمی کنید، معقول تره که نسخه های پایین تری ازش رو انتخاب کنید تا کاربرانی که نسخه های پایین تری دارند هم بتونن از برنامتون استفاده کنن. در فیلد بعدی هم باید کمترین نسخه‌ی API  ای که کاربر می‌تونه داشته باشه رو انتخاب کنید، مثلا می خواید از یه ویژگی خاص آیس‌کریم‌سندویچ استفاده کنید ولی با این حال برنامه‌تون روی گوشی های مدل پایین ترهم اجرا می‌شه ولی ممکنه باگ داشته باشه، شما Minimum Required SDK رو می‌ذارید رو API8 تا توی play store همه بتونن دانلودش کنن و بعدا وقت باگ‌هاش دراومد درستش کنید.خود گوگل هم پیشنهاد کرده API 8 رو انتخاب کنید تا تقریبا تمام گوشی‌های اندروید برنامه‌تون رو اجرا کنن.

گزینه ی ceate custom launcher icon اگه تیک خورده باشه یعنی اینکه همین الان که می‌خواید پروژه‌ی برنامه‌تون رو بسازید، بیاید آیکون برنامه‌تون رو هم طراحی کنید و بذارید تو برنامه.

گزینه‌ی بعدی برای اینه که بخواید کتابخانه‌ی اندروید بسازید.

گزینه‌ی بعدی هم اگه تیکش رو بردارید می‌تونید محل ذخیره شدن پروژه رو تغییر بدید.حالا که همه چیز رو مشخص کردید next رو بزنید.

۲. اگر تو مرحله‌ی قبل گزینه‌ی ساختن آیکون رو تیک زده باشید حالا ازتون می خواد که آیکون برنامه‌تون رو درست کنید، می‌تونید یه نوشته رو انتخاب کنید و تزئینش کنید (Text) یا از طرح‌های گرافیکی خود اندروید استفاده کنید (Clipart) یا اینکه یه عکسی رو از توی کامپیوترتون انتخاب کنید و به عنوان آیکون برنامه ازش استفاده کنید.

بعد با گزینه هایی که داره محل قرار گرفتن عکس رو تنظیم کنید. گزینه‌ی  Trim Surrounding Blank Space فضای خالی اطراف عکس رو می‌بره. اگه تیکش رو بردارید، می تونید خودتون انتخاب کنید چقدر از فضای اضافه‌ی دور عکس بمونه.

Shape سه تا حالت داره یا هیچی (None) یا مربعی (Square) یا دایره‌ای (Circle). و می‌تونید رنگ پس زمینه رو هم انتخاب کنید.

بعد از طراحی آیکون برنامه‌تون next رو بزنید.

۳.گزینه‌ی بعدی یه فعالیت (activity) میسازه. و مشخصه که هر برنامه ای حداقل باید یه صفحه داشته باشه که همون فعالیته. پس بذارید گزینه‌ی Create Activity فعال بمونه، حالا باید انتخاب کنید که یه فعالیت معمولی می‌خواید یا یه فعالیت با جزئیات جامع (MasterDetailed). اگر فعالیت با جزئیات کامل رو انتخاب کنید بهتون این امکان رو می‌ده که روی تبلت‌ها دو تا ستون داشته باشید و روی صفحات کوچکتر یه ستون و دوتا فعالیت براتون می‌سازه و غیره و ازتون می‌خواد که سطح API برنامه‌تون رو بالاتر از API 11 انتخاب کنید تا این ویژگی فعال شه. اگر هم یه فعالیت معمولی می‌خواید که می‌تونید next رو بزنید.

۴.اگر در قسمت قبل انتخاب کرده باشید که یه فعالیت (activity) بسازید، الان ازتون می‌خواد که اول اسم فعالیت رو انتخاب کنید بعد اسم صفحه بندی‌اش رو انتخاب کنید. بعد ازتون می‌خواد ماهیت فعالیتتون رو انتخاب کنید اگر None رو انتخاب کنید مشکلی نیست ولی اگه هر کدوم از گزینه‌های دیگه رو انتخاب کنید ازتون می‌خواد که کمترین سطح API تون رو ۱۴ بذارید (و طبعا باید API 14 رو هم دانلود و نصب کرده باشید)

قسمت بعد از شما می‌خواد که برای وقتی که توی این فعالیت هستید و کلید بازگشت زده می‌شه، اگه تابع مشخصی تو نظرتون هست بنویسید اگر هم نه که خالی بذاریدش.

قسمت بعدی هم اسم فعالیته که در زمان اجرا بالاش نوشته می‌شه. Finish رو بزنید تا پروژه ساخته بشه.

ممکنه ازتون بخواد که کتابخانه‌ی اندروید رو نصب کنید و این پیغام خطا رو نشون بده :

به مسیری که sdk تون ذخیره شده برید، جایی که فولدرهای tools, platform-tools, platforms و.... قرار داره، یه فولدر با اسم extras بسازید، بعد توش یه فولدر دیگه به اسم android بسازید، بعد این فایل رو دانلود کنید و از حالت فشرده خارج کنید و داخل فولدری که همین الان ساختید قرار بدید، ایکلیپس رو اگه باز هست ببندید و دوباره اجراش کنید، حالا شروع به ساختن پروژه‌ی جدید کنید.

۵.خوب بعد از اینکه پروژه ساخته شد. قسمت سمت چپ ایکلیپس توی ستون Package Explorer باید اسم پروژتون رو ببنید. روی دکمه‌ی مثلثی بغلش کلیک کنید تا زیرشاخه هاش رو نشون بده، بعد src رو انتخاب کنید و بعد هم اسم package تون رو. می بینید که یه فایل جاوا ساخته شده که مربوط به همون activity هست که تو مرحله قبل دستور داده بودید بسازه.

ما تو این فایل جاوا می تونیم توابع مختلفی رو override (دوباره نویسی تابعی که از والد -در اینجا کلاس Activity- ارث بری شده) کنیم تا activity کامل تری داشته باشیم. به طور پیش فرض خودش onCrete رو override کرده. همون طور که قبلا اشاره شد، می تونیم توابعی مثه onPause , onStart و... رو override کنیم.

 

۶.override کردن تابع onCreate ضروریه و می بینید که اول دستور super.onCreate رو فراخوانی می کنه بعد هم با دستور setContentView محتواش رو روی صفحه بندی (layout) این activity تنظیم می کنه. (با ارجاع به فایل xml ای که در شماره بعد توضیح داده شده) تا وقتی که ContentView تنظیم یا ست نشده باشه ما در خروجی چیزی نمی بینیم.

 

۷.اون R.layout.main به فایل xml ای ارجاع داده میشه به نام main. این فایل xml در زیرشاخه res و بعد هم layout قرار داره. (بقیه زیر شاخه ها رو تو شماره‌ی ۱۳ آموزش خواهیم داد) که اگه روش کلیک کنید براتون یه صفحه ای رو میاره که توش واسط کاربری (UI) برنامه تون رو میتونید درست کنید.

 

۸.اگه از قسمت پایینی همین صفحه main.xml رو انتخاب کنید، کد xml نوشته شده برای نمایش این activity رو بهتون نشون میده. همون طور که می بینید این activity روی یک linearlayout سوار شده (خط ۲ کد) و یک TextView هم که به صورت پیش فرض روی صفحه بود اینجا ساخته و مقدار دهی شده. (خط ۷ کد). در پست های بعدی این قسمت بیشتر توضیح داده خواهد شد.

 

۹. خوب حالا برای اجرای نرم افزار روی دکمه‌ی Run بالای صفحه کلیک کنید (توی تصویر مشخصه). و چون اولین باره که می خواید پروژه های اندرویدی رو اجرا کنید ازتون می پرسه چه مدلی قصد دارید اجراش کنید، همون اولین گزینه یعنی Android Application رو انتخاب کنید و OK رو بزنید.

 

۱۰.حالا شبیه ساز (emulator) شروع به شبیه سازی این برنامه می کنه یعنی اول برنامه رو روی دستگاه مجازی نصب می کنه و بعد هم اون رو اجرا می کنه، که یه هم چین چیزی می شه :

و اگه تو دستگاه مجازی به قسمتی برید که همه برنامه ها رو نشون میده می‌بینید که این برنامه هم نصب شده و با باز و بسته کردن شبیه ساز از بین نمی ره و تنها در صورتی از بین می ره که خودتون wipe user data رو که قبلا توضیح دادم (شماره ۱۰ این آموزش) رو انتخاب کرده باشید یا به صورت دستی پاکش کنید (uninstall). 

 

۱۱.خوب تا اینجا فهمیدیم که یه پروژه به صورت پیش فرض یه فایل جاوا داره که کلاس Activity رو ارث بری (extends) می کنه و توش به یه فایل xml اشاره می کنه که همون UI یا واسط کاربریه.

حالا بیاید با فولدرهای دیگه‌ی پروژه آشنا بشیم. در ستون سمت چپ یه فولدری هست به نام gen که توصیه‌ی اکید میشه اصلا دستکاریش نکنید. چون شامل فایل هایی هست که به صورت خودکار generated میشه. ولی حالا یه کم درباره اش توضیح می دیم. روی فایل R.java کلیک کنید تا بازش کنه.

همین طور که در طول برنامه ما منابعی (resources) رو به برنامه اضافه می کنیم (که در فولدر res ذخیره می‌شن) اندروید به صورت خودکار ورودی هایی رو براشون در این فایل R.java تعبیه می کنه. مثلا برای آیکن برنامه یه ورودی ic_launcher ساخته و بهش یه عدد خاصی رو نسبت داده.

خوب حالا لازم نیست نگران این قسمت باشید فقط می خواستم بدونید هم چین فایلی وجود داره.

 

۱۲.فولدر بعدی که می خوایم بررسی کنیم android 2.1 هست، این فولدر در واقع همون SDK هست که شامل تمام توابع و ساختار هاییه که به صورت پیش فرض تعریف شده و همشون در یک کتابخانه‌ به نام android.jar گردآوری شده. شاید در طول انجام پروژه اصلا نیازی پیدا نکنید که بهش مراجعه کنید ولی خوب اگه از توابع و اینا خواستید مطلع بشید می تونید یه نگاهی بهش بندازید.

 

۱۳. بعدش فولدر assets هست (که بعدا بهش می پردازیم) و بعد هم فولدر res که مخفف resources به معنی منابع هست و تمام عکس ها و فایل هایی که می خواید تو برنامه تون ازش استفاده کنید رو باید اینجا نگه داری کنید. مثلا الان آیکن برنامه به صورت پیش فرض توی فولدرهای drawable وجود داره. تمام فایل های xml مربوط به layout ها (صفحه بندی ها) دراینجا نگه داری می شه.

 

۱۴. فایل بعدی AndroidManifest.xml هست که توی پست بعدی مفصل دربارش توضیح خواهیم داد. در واقع این فایل یک ویرایشگر بصریه (Visual Editor) که قسمت های مختلف نرم افزار رو می تونیم توش تغییر بدیم. در واقع این فایل برنامه شما رو برای سیستم اندروید تعریف و تشریح می کنه.

دو تا فایل بعدی یعنی progaurd.cfg و project.properties هم مهم نیستن.

 

خوب این یه شناخت پایه ای بود بر پروژه های اندرویدی!


برگرفته شده از AndroidCode.ir
http://bayanbox.ir/blog/androidapp/images/2/g1.jpg?view

http://bayanbox.ir/blog/androidapp/images/2/m2.jpg?view

کار کردن با AndroidManifest.xml

دوشنبه, ۸ اسفند ۱۳۹۰، ۱۱:۲۲ ب.ظ

تماشای برخط [لینک مستقیم] فیلم آموزش «کارکردن با AndroidManifest.xml»

زیرنویس فارسی

زیرنویس انگلیسی [English Subtitle]

دریافت نسخه pdf این آموزش [1.31 مگابایت]

 

۱.حالا می خوایم یه نگاه دقیق تری روی AndroidManifest.xml داشته باشیم به خاطر اینکه فایل مهمیه و برنامه شما رو برای سیستم اندروید تشریح می کنه، پس مهمه که همه چیز رو در این فایل درست وضع کرده باشید. خوب یه پروژه اندروید بسازید (نحوه انجام این کار) و روی AndroidManifest.xml کلیک کنید تا باز بشه. خوبیه ایکلیپس اینه که به شما اجازه می ده این فایل رو در حالتهای مختلفی ویرایش کنید، مثلا حالت ویرایش بصری که تو عکس هست یا اینکه مستقیما از خود فایل xml ویرایش کنید (عکس بعدی).

 

۲.وقتی به حالت ویرایش xml نگاه می کنید میبینید که خیلی ساده تر از حالت ویرایش بصریه و بیشتر توسعه دهنده ها معمولا حالت ویرایش xml رو بیشتر می‌پسندن، ولی خوب این حالت یه نقطه ضعف هایی هم داره، مثلا ویژگی پیشنهاد کد (code hinting) نداره و برای صوفه جویی در وقت تو این جور مواقع بهتره از همون حالت ویرایش بصری کمک بگیریم.

 

۳.خوب حالا بیاید این حالت های ویرایش بصری رو یه نگاهی بندازیم و بررسی کنیم. در قسمت Manifest ما بسته (package) برنامه رو تعریف می کنیم (که قبلا انجام دادیم). و می تونیم نسخه‌ی (version) درونی برنامه رو تعیین کنیم و یه رشته‌ی (string) شماره نسخه تعیین که کاربر می بینه. کاری که بعده ها قراره تو این صفحه انجام بدیم خروجی گرفتن از برنامه است (با کلیک روی Use the Export Wizard)

 

۴.در حالت ویرایش xml، تگ های manifest و application تغییراتی رو که در نوار Manifest و Application ایجاد می کنید منعکس می کنه.

 

۵. در نوار Application، موارد مختلفی رو می تونید تنظیم یا ویرایش کنید، مثلا Label همون اسم نرم افزارتونه که تو گوشی اجرا میشه، یا icon تصویریه که از برنامه شما تو گوشی دیده میشه، یا Theme که تو آموزش های آینده بیشتر توضیح داده خواهد شد. مثلا تو قسمت Permissions می تونید به کاربر قبل از نصب برنامتون هشدار بدید که از چه اطلاعاتیش استفاده می کنید.

تو اون قسمت پایینی به اسم Application Nodes، می تونید فعالیت های (Activities) برنامه رو تعریف کنید. (که فعلا تنها یه فعالیت main وجود داره.)

 

۶. در نوار Permissions می تونیم تمام در خواست هایی که از کاربر داریم (برای استفاده از اطلاعات داخل گوشیش) رو مطرح کنیم و از کاربر قبل از نصب برنامه اجازه استفاده از اون اطلاعات خاص رو بگیریم.

در مورد Instrumentation هم تو این دوره بهش نمی پردازیم.


ساختن و مدیریت فعالیت ها Activities یک

شنبه, ۲۷ اسفند ۱۳۹۰، ۰۹:۴۷ ق.ظ

تماشای برخط  [لینک مستقیم] فیلم آموزش «فعالیت ها (activities)»

زیرنویس انگلیسی [English Subtitle]

دریافت نسخه pdf این آموزش [2.11 مگابایت]

 

همون طور که قبلا هم اشاره شد، فعالیت ها (activities) یکی از ساختارهای اصلی برنامه اندرویده. اگه بخوام خیلی ساده بگم، یه فعالیت یه صفحه ی ساده از برنامه‌ی شماست. پس خیلی مهمه که مبانی فعالیت‌ها رو خوب یاد بگیرید.

۱.برای شروع اول یه پروژه اندروید تو ایکلیپس می‌سازیم. (راهنما) از منوی سمت چپ روی اسم پروژه کلیک می کنیم و از شاخه‌ی src به دومین زیر شاخه می‌ریم که یه فایل جاواست. این فایل کلاس فعالیت رو ارث‌بری می‌کنه و توسعه می‌ده. تو خط آخر این فایل جاوا (تو تصویر آبی شده) می‌بینیم که محتوای بصری این فعالیت (ContentView)، رجوع داده شده به یه فایل به نام main که در فولدر layout در منابع (resource) هست.

۲.پس اگه بریم توی شاخه‌ی res و بعد layout و بعد main.xml این فعالیت رو می‌بینیم. که به طور پیش فرض یه متن Hello World توش وجود داره. توصیه می‌کنم برای اینکه مطمئن بشید برنامه‌تون درست کار می کنه یه بار Run کنید.

 

۳.خوب حالا می‌خوام خیلی سریع چند تا نکته رو تو AndroidManifest.xml براتون توضیح بدم. در حالت ویرایش xml، می‌بینیم که درون تگ application، تگ activity وجود داره. یکی از چیزایی که اینجا می‌بینیم <intent-filter> هست. (که با توضیحات مفصل تو یه پست دیگه بررسی خواهد شد) به طور ساده، این تگ به سیستم اندروید می‌گه که وقتی این برنامه شروع به کار می‌کنه، اولین فعالیتی که باید اجرا بشه، اون فعالیتیه که داخل تگ action قرار داره. و این طور معرفی شده :

 

<action android:name="android.intent.action.MAIN" />

۴.اگه بخوایم یه فعالیت دیگه هم به برناممون اضافه کنیم، احتیاج داریم که دو فایل Main.java و main.xml رو دوباره بسازیم. (البته اسم این دوفایل رو هرچیزی که دلتون بخواد می‌تونید بذارید و محدودیتی نداره ولی برای فراگیری راحتتر، سعی کردم که در همه پروژه‌ها اسم‌های یکسانی انتخاب کنم) یعنی باید اول یه فایل جاوا بسازیم که کلاس activity رو ارث‌بری کنه. برای این کار روی اسم package راست کلیک می‌کنیم، بعد New و بعد هم class.

۵.یه اسمی براش بذارید (جلوی فیلد Name) من اسمش رو می‌ذارم Dovomi و بعد رو Browse کلیک کنید. اینجا می‌خوایم کلاسی رو انتخاب کنیم که این فعالیت قراره ارث‌بری کنه. پس تو فیلد choose type بنویسید activity و کلاس Activity - android.app رو انتخاب کنید. روی ok کلیک کنید بعد هم Finish.

۶.حالا یه فایل جاوا درست شده به نام Dovomi که کلاس Activity رو ارث‌بری می‌کنه. این فعالیت باید تابع (متد)‌ onCreate رو دوباره نویسی (override) کنه. توی کلاس بنویسید oncre و با زدن ctrl + space اسم توابعی (متدهایی) که با این حروف آغاز می‌شه رو میاره، تابع onCreate رو انتخاب کنید.

۷.قدم بعدی، اینه که یه فایل xml بسازیم که شبیه main.xml باشه ولی واسط کاربری فعالیت Dovomi رو نگه داره. وقتشه که از سومین دکمه‌ی مخصوص اندروید که در toolbar ایکلیپس وجود داره استفاده کنیم (این دکمه به ما کمک می‌کنه که یه فایل xml اندرویدی بسازیم - تصویر) روش کلیک کنید، صفحه‌ای باز می‌شه، برای این فایل یه اسم بذارید (جلوی فیلد File) البته این نام گذاری خیلی سخت و محکمه - تنها از حروف کوچک و اعداد و خط زیر _ می تونید استفاده کنید و اول اسم هم باید با حروف شروع بشه - خوب Resourse Type که Layout باشه. Root Element به معنای المان ریشه رو هم باید انتخاب کنیم. فعلا همون LinearLayout باشه تا بعدا مفصل بقیه رو توضیح بدم. LinearLayout ساده‌ترین طرح‌بندی صفحه است که وقتی چیزهایی رو به صفحه اضافه می‌کنیم به روش طولی (Linear) طرح‌بندی(Layout) می‌کنه. وقتی Finish رو بزنید یه فایل xml می‌سازه.

۸.وقتی فایل xml ساخته شد برای شما در حالت طرح‌بندی گرافیکی (Grafical Layout) میاره. که از اینجا می‌تونید هر عنصری که بخواید رو توی صفحه‌بندی تون انتخاب کنید. می‌تونید برای شروع یه متن از ستون سمت چپ بکشید و توی صفحه‌ی مشکی رها کنید، برای تغییر متن، روش یه بار کلیک کنید و از properties (که قبلا آورده بودیمش سمت راست محیط کارمون)، فیلد Text رو پیدا کنید و متنش رو تغییر بدید. از بخش properties خیلی از ویژگی‌های عناصر رو می‌شه تعیین کرد.

۹. حالا که فعالیت دوم رو ساختیم، نیاز داریم که یه جوری تو برناممون اجراش کنیم، چون وقتی برنامه باز می‌شه همون فعالیت اصلی اجرا می‌شه. برای این منظور، به فعالیت اصلی‌مون می‌ریم (main.xml) و یه دکمه می‌ذاریم. در قسمت properties، خود ایکلیپس به طور پیش فرض، یه id برای دکمه می‌ذاره (اینجا button1)، که برای ارجاع هرچیزی به این دکمه، به id (شناسه) اش احتیاج داریم. شما می‌تونید این شناسه رو از همین‌جا تغییر بدید.

۱۰.الان می‌خوایم یه کدی بنویسیم که وقتی کاربر روی این دکمه کلیک کنه، فعالیت Dovomi اجرا بشه. برای این‌کار می‌ریم به فایل main.java. زیر آخرین خط نوشته شده در تابع (متد) onCreate، چند خط اضافه می‌کنیم تا به اون دکمه‌ای که ساختیم بتونیم رجوع بدیم. برای این منظور، یه کنترل Button می‌سازم به اسم b. برای ارجاع از دکمه‌ای که تو واسط کاربری ساختیم به این کنترل، باید از تابع findViewbyId استفاده کنیم. در واقع این تابع آدرس اون دکمه رو از واسط کاربری می‌گیره و به کنترلی (b) که تو فایل xml ساختیم ارجاع می‌ده. توی پرانتزهای این تابع بنویسید R.id وقتی یک نقطه بعد از این بگذارید، تمام اشیائی که می‌تونید بهشون رجوع بدید رو نشون می‌ده، button1 رو انتخاب کنید. (الان کنترل b، ارجاع داده شد به اون دکمه‌ای که در شماره قبل ساختیم)

۱۱.با زدن کلیدهای ctrl +1 در ویندوز و cmd + 1 در مک، می‌بینیم که از برنامه خطا می‌گیره.


برگرفته شده از AndroidCode.ir

ساختن و مدیریت فعالیت ها Activities دو

سه شنبه, ۵ اردیبهشت ۱۳۹۱، ۰۱:۰۰ ق.ظ

در ادامه ‌ی این آموزش

دریافت نسخه pdf این آموزش[2.78 مگابایت]

 

۱۱.با زدن کلیدهای ctrl+1 در ویندوز و cmd+1 در مک، می‌بینیم که از برنامه خطا می‌گیره و برای رفع مشکل پیشنهادهایی رو می‌ده، اینجا بهتره با انتخاب گزینه 'import 'Button کلاس دکمه رو وارد(import) می‌کنیم.

۱۲.بعد از این کار، دوباره از برنامه خطا می گیره چون نوع داده‌ای که به عنوان خروجی متد (تابع) findViewById هست (یعنی نوع داده‌ای view) با نوع داده‌ای دکمه فرق می‌کنه به همین خاطر باید cast [به معنی در قالب قرار دادن، به شکل درآوردن] بشه، با زدن ctr+1، بهمون پیشنهاد می‌ده که این کارو انجام بدیم.
 
۱۳.قدم بعدی اینه که متد setOnClickListener (به معنای گوش بزنگ کلیک) رو به کار ببریم تا هروقت کاربر روی دکمه کلیک کرد، بتونیم بهش پاسخ بدیم و باعث اجرای چیزی بشیم. برای این کار، باید این کد رو اضافه کنیم. () b.setOnCLickListener درون پرانتزها باید یه شی جدید از نوع onClickListener بسازیم. (یادتون باشه که می‌تونید برای راحتی کار و سرعت بیشتر چندتا حرف اول کلمات رو بنویسید و با زدن ctrl+space برنامه بقیه اش رو بهتون پیشنهاد می‌ده). این شی درواقع یه کنترل کننده‌ی وقایع (event handler) ناشناس هست.
خوب بازهم خطا گرفته، ctrl+1 می‌زنیم ببنیم چه پیشنهادی می‌ده، همون اولی یعنی وارد کردن کلاس onClickListener هست رو انتخاب می‌کنیم. در آخرین خط (بعد از بسته شدن پرانتز این دستور یه ; بذارید)
۱۴.اونحایی که نوشته TODO // دستوراتی رو می نویسیم که می‌خوایم با فشردن دکمه اجرا بشن. خوب ما در اینجا می‌خوایم وقتی کاربر دکمه رو فشار داد، فعالیت Dovomi اجرا بشه. برای شروع کار یه فعالیت، از متد startActivity استفاده می‌کنیم. در داخل پرانتزهای این متد(تابع)، باید نمونه‌ای از کلاس intent رو انتقال بدیم (پاس کنیم). -بعدا مفصل به کلاس intent می‌پردازیم- ولی تا همین حد بدونید که کار این کلاس اینه که اعلام کنه، این مولفه رو می خوام فعال کنم. برای این کار باید یه شی جدید از نوع intent بسازیم (new intent) برای ساختن این شی چندین راه مختلف وجود داره، و چون ما می‌خوایم برای یه فعالیت ازش استفاده کنیم ازاین نوعش استفاده می‌کنیم (تو تصویر مشخصه) که یه contexView می‌گیره و یه کلاسی که مال فعالیت مورد نظرمون هست.
۱۵.درباره context باید بگم که از این به بعد نسبتا زیاد ازش استفاده می‌کنیم، به خاطر این که هر دفعه‌ای که از سیستم می‌خوایم تا چیزی رو اجرا کنه، یه context می‌فرستیم که مشخص می‌کنه چه مولفه‌ای این تقاضا رو داده. چند راه برای گرفتن context وجود داره، ولی چون ما در یه تابع داخلی ناشناس (anonymous inner method) هستیم، راحتترین روش برای این کار اینه که بگیم main.this که رجوع می‌ده به فایل main که اینجا داریم، به طور کلی این کار به این معنیه که سیستم متوجه بشه این درخواست از طرف main بوده.
دومین ورودی این تابع باید یه کلاسی باشی از اون فعالیتی که می‌خوایم اجرا کنیم، که Dovomi باشه. و می‌نویسیم Dovomi.class و آخر این خط یه ; می‌ذاریم.
 
۱۶.خیلی سریع کارایی که کردیم رو دوره می‌کنم، اول یه ارجاع گرفتیم از دکمه‌ای که تو فایل main.xml ساختیم، تابع onClickListener رو از نوع داخلی ناشناس نوشتیم که وقتی کاربر کلیک می‌کنه (درواقع توی گوشی که موس نیست کلیک کنه، منظورش همون فشاردادن با انگشته)، یه فعالیت جدید شروع بشه، که به عنوان ورودی یه intent بهش می‌دیم که مشخص کنه چه کسی این درخواست رو کرده (main)، و کدوم فعالیت قراره اجرا بشه(Dovomi).
‎خوب حالا بیاید این برنامه رو اجرا کنیم. وقتی رو دکمه کلیک می‌کنیم این پیغام خطا ظاهر می‌شه که The Application Activities has stopped unexpectedly یعنی فعالیت برنامه به صورت غیر منتظره‌ای قطع شده.
‎در طول توسعه برنامه این اتفاق خیلی ممکنه پیش بیاد اما باید یادبگیریم که چطور با این مشکل برخورد کنیم و رفعش کنیم.
 
‎۱۷.دوباره به ایکلیپس برگردید، تا الان تو منظر جاوا داشتیم کار می‌کردیم، حالا می‌ریم سراغ منظر اندرویدی، اگه در قسمت بالا سمت راست صفحه‌ی ایکلیپس نگاه کنید، این دکمه رو می‌بینید  روش کلیک کنید، other رو انتخاب کنید، یک منظر مختص اندروید وجود داره به نام DDMS اون رو انتخاب کنید. این منظر حاوی یه سری ابزار مختلف برای نظارت بر روی اینکه چطور برنامتون روی شبیه ساز یا گوشی کار می‌کنه، هست.
 
۱۸.یکی از فضاهای مفید LogCat هست، وقتی برنامتون روی شبیه‌ساز یا گوشی اجرا می‌شه، به طور مداوم پیغام‌هایی رو درباره‌ی چیزها می‌فرسته، همونطور که مشاهده می‌کنید یه سری پیغام قرمز رنگ هم داریم که به طور کلی چیز خوبی نیست.
دومین خط قرمز نوشته ActivityNotFoundException یعنی فعالیت مورد نظر رو پیدا نکرده، اما چرا؟ به خاطره اینه که هنوز این فعالیت رو به فایل manifest اضافه نکردیم. پس می‌ریم سراغ manifest تا تنظیمات لازم رو انجام بدیم.

۱۹.هر فعالیتی که در برنامه شما وجود داره، باید تو فایل manifest تعریف شده باشه، خوب پس الان باید تو فایل manifest یه فعالیت جدید درست کنیم، با نوشتن این کد 

 

<activity android:name="" />

 

ساختن یه فعالیت جدید رو شروع می‌کنیم، در قسمت اسم باید به اسم فعالیتیمون ارجاع بدیم، یه نقطه (.) می‌ذاریم تا به بسته‌ی پیش فرض (ir.AndroidCode.ir) اشاره کنه و بعد می‌نویسیم Dovomi. چون نمی‌خواهیم intents تعریف کنیم، فقط کافیه همین کد رو بنویسم.

 

<activity android:name=".Dovomi" />

 

حالا دوباره پروژه رو اجرا کنید.

۲۰.وقتی برنامه تو شبیه ساز اجرا شد، روی دکمه کلیک کنید، می‌بینید که با این کار برنامه به فعالیت Dovomi رفته ولی هیچی نشون نمی‌ده و خبری از اون متنی که نوشته بودیم نیست، خوب اگه به فایل جاوامون برگردیم، تفاوت فایل جاوای dovomi و main در اینه که ما هنوز محتوای بصری رو به فایل جاوا ضمیمه نکردیم، (یعنی تابع setContentView رو استفاده نکردیم، چون این تابع به سیستم اندروید می‌گه که برای این فعالیت از کدوم محتوای بصری -فایل xml- استفاده بکنه)

پس این کد رو اضافه می‌کنیم. (ورودی تابع : به قسمت منابع یا resource برو از پوشه ی layout فایل dovomi.xml رو بردار)

 

 

setContentView(R.layout.dovomi);

 

حالا پروژه رو دوباره اجرا کنید.

۲۱.خوب دیگه این دفعه، وقتی رو دکمه کلیک می‌کنید به فعالیت دوم می ره و متنی که نوشتیم رو نشون می‌ده :)

به طور خلاصه : باید اول یه فایل جاوا بسازید، اگه می‌خواید محتوای بصری جدیدی درست کنید یه فایل xml هم برای اون درست می‌کنیم و به فایل جاوا پیوست می‌کنیم (شماره ۲۰) ، یه بخش مهم اینه که این فایل xml رو تو manifest تعریف کنید (شماره ۱۹)

 

دریافت source code این آموزش :

دانلود فایل Main.java

دانلود فایل Dovomi.java

دانلود فایل main.xml

دانلود فایل dovomi.xml

فایل های جاوا درون پکیج قرار می گیرد و فایل های xml داخل پوشه ی layout در پوشه ی res (راهنما : با توجه به این عکس فایل ها را در پوشه های مناسب قرار دهید)

دانلود فایل AndroidManifest.xml

این فایل در پوشه ی اصلی قرار می گیرد.


برگرفته شده از AndroidCode.ir

استفاده از مفاهیم آشکار (explicit intents)

دوشنبه, ۱۱ اردیبهشت ۱۳۹۱، ۰۳:۰۴ ب.ظ

تماشای برخط [لینک مستقیم] فیلم «آموزش نحوه استفاده از مفاهیم آشکار»

زیر نویس انگلیسی [English Subtitle]

نسخه pdf این آموزش[1.75 مگابایت]

 

تا اینجا یاد گرفتیم که چطور با فعالیت ها (activities) کار کنیم، اگه یادتون باشه برای شروع فعالیت Dovomi از intent استفاده کردیم، کار مفهوم (intent) اینه که یه عنصری از برنامه تون رو فعال کنه.

دو نوع مفهوم (intent) وجود داره، مفاهیم آشکار و مفاهیم ضمنی یا مجازی.

با مفاهیم آشکار، یک عنصر مشخصی از برنامه رو برای فعال شدن تعیین می‌کنیم. مثلا می‌خوایم یه فعالیت(activity) دیگه رو تو برناممون اجرا کنیم، از یه مفهوم آشکار استفاده می‌کنیم که آشکارا به سیستم بگه می‌خوام اون فعالیت رو فعال(اجرا) کنم.

مفاهیم ضمنی (که تو پست بعدی بهش می‌پردازیم) در واقع یک پیام کلی برای سیستم می‌فرستن : که آیا برنامه‌ای در سیستم عامل این گوشی وجود داره که بتونه این مفهوم رو اجرا کنه؟ اگه وجود داشته باشه لیست این برنامه‌ها به کاربر پیشنهاد می‌شه و کاربر یکی رو انتخاب می‌کنه و از این طریق اون چیزی که با مفهوم فرستاده شده (ورودی‌های intent) اجرا می‌شه.

 

خوب الان می‌خوایم رو مفاهیم آشکار تمرکز کنیم. برای شروع یه پروژه بسازید با دوتا فعالیت (activitie) که تو فعالیت اصلی (main) یه متنی که قابل نوشتن باشه یعنی کاربر می‌تونیه توش متن وارد کنه (از توی Text Fields اولی رو انتخاب کنید) و یه دکمه (برای اینکه به فعالیت دوم بره)، فعالیت دوم هم یه فیلد متنی ساده داشته باشه.(حواستون باشه که فعالیت دوم رو هم تو فایل manifest تعریف کنید).

۲.کاری که با این برنامه می‌خوایم بکنیم اینه که : کاربر یه متنی رو تو فیلد متنی قابل نوشتن می‌نویسه و دکمه رو می‌زنه، فعالیت دوم باز می‌شه و متنی که نوشته بوده رو نشون می‌ده. یعنی می‌خوایم یاد بگیریم اطلاعاتی رو از یه فعالیت به فعالیت دیگه منتقل کنیم.

اول به فایل main.java می ریم و یه مرجع(اشاره‌گر) از دکمه و فیلد متنی می‌گیریم. با نوشتن این کد 

 

EditText matn = findViewById(R.id.editText1);

 

یه مرجع از فیلد متنی قابل نوشتن‌مون می‌گیریم. خوب بازهم با ctrl+1 خطاهای برنامه رو درست می‌کنیم. (اینجا کافیه فقط cast انجام بدید.) همین کارو برای دکمه انجام می‌دیم.

 

Button d = findViewById(R.id.button1);

 

و برای دکمه تابع setOnclickListener رو صدا می‌زنیم تا کارایی که قراره با فشردن دکمه انجام بشه رو تعیین کنیم. با نوشتن این کد :

 

d.setOnClickListener(new OnClickListener() {
	@Override
	public void onClick(View v) {

	}
});

 

همون طور که قبلا گفته شد بعد از نوشتن new (خط اول) اگه بنویسید onclick و بعد ctrl+space رو بزنید خودش بهتون ادامه‌اش رو پیشنهاد می‌ده و روی OnClickListener که کلیک کنید، بقیه‌اش رو خودش می‌نویسه.

۳.الان قصد داریم که یه intent بسازیم، همون طور که قبلا اشاره شد intent یک راه برای فعال کردن جزئی از برنامه است. پس برای اینکه یه نمونه از کلاس Intent بسازیم، می‌نویسیم Intent و یه اسم براش می‌ذاریم و newاش می‌کنیم. (با ctrl+space، اون گزینه رو انتخاب می‌کنیم که مناسبه پاس کردن یه فعالیته -تو تصویر مشخصه-)

برای ورودی‌های سازنده‌ی intent، اول باید مولفه‌ای که این درخواست رو کرده بنویسیم یعنی Main.this (که یه مرجع به این فعالیت اصلی هست). برای ورودی دوم، باید کلاس فعالیتی رو بدیم که می‌خوایم اجرا بشه یعنی Dovomi.class. پس کدمون اینجوری می‌شه :

 

Intent mafhoom = new Intent(Main.this, Dovomi.class);

 

در واقع ما می‌تونستیم همین قسمت (new Intent(Main.this, Dovomi.class رو به عنوان ورودی startActvity به کار ببریم (مثل آموزش قبلی) ولی این دفعه می‌خوایم یه چیزایی رو ضمیمه‌ی mafhoom کنیم. چیزی که می‌خوایم اضافه کنیم همون متنیه که کاربر تو matn وارد می‌کنه. برای این کار از تابع putExtra از شی mafhoom استفاده می‌کنیم.

۴.ورودی اول این تابع یه رشته (String) است که به عنوان اسم اون کلیدی که می‌خوایم اضافه کنیم به کار برده می‌شه و ورودی دوم از هر نوعی می‌تونه باشه و ما چون اون متن رو می‌خوایم بفرستیم، برای ورودی دوم هم نوع رشته (String) رو انتخاب می‌کنیم. اسم کلید رو می‌ذارم "matneVaredShode" و برای بازیابی اطلاعاتی که داخل matn (متنی که قراره کاربر وارد کنه) وجود داره، باید از تابع getText استفاده کنیم و اگه دقت کنید می‌بینید که خروجی این تابع از نوع Editable هست نه از نوع رشته‌ی خام پس با اضافه کردن ()toString. اونو به رشته‌ی خام تبدیل می‌کنیم.

 

mafhoom.putExtra("matneVaredShode", matn.getText().toString());

 

از matn ایراد می‌گیره و با زدن ctrl+1 بهمون پیشنهاد می‌کنه که اونو به final تغییر بدیم (چون قراره ازش تو یه کنترل کننده وقایع ناشناس استفاده کنیم).

ما اون اطلاعاتی که می‌خواستیم به فعالیت Dovomi بفرستیم رو به mafhoom اضافه کردیم، حالا وقتی می‌خوایم فعالیت جدید  رو شروع کنیم، این اطلاعات براش فرستاده می‌شه. تابع startActivity رو استفاده می‌کنیم و mafhoom رو به  عنوان ورودی براش می‌فرستیم.

۵.خوب تا اینحا دیگه کار ما با Main.java تموم می‌شه، حالا باید به Dovomi.java بریم و اطلاعاتی که همراه mafhoom فرستاده شده بازیابی کنیم و تو textView نشون بدیم. برای شروع اول یه مرجع از فیلد متنی می‌گیریم با این کد :

 

TextView matni = (TextView) findViewById(R.id.textView1);

برای اینکه این فیلد متنی، متن دلخواه ما رو نشون بده باید از تابع setText استفاده کنیم(هرچی به عنوان ورودی بفرستیم رو نشون می‌ده)، برای گرفتن همون متنی رو که توسط mafhoom فرستاده شده، اول باید با getIntent مفهومی که این فعالیت رو اجرا کرده رو به دست بیاریم، و بعد از تابع getExtra برای گرفتن اطلاعات داخل intent استفاده می‌کنیم، که در واقع تمام اطلاعاتی که بهش داده بودیم رو برمیگردونه. اما ما فقط اون قسمتی از اطلاعاتش رو می‌خوایم که با کلید "matneVaredShode" مشخص شده (اگرچه در این تمرین قفط همین یدونه رو همراه mafhoom فرستادیم). و چون اون اطلاعاتی که می‌خوایم از نوع رشته است، از تابع getString استفاده می‌کنیم و کلید رو بهش می‌دیم.

 

matni.setText(getIntent().getExtras().getString("matneVaredShode"));

 

۶.حالا برنامه رو اجرا می‌کنیم و می‌بینیم همون متنی که تو فعالیت اصلی وارد کردیم تو فعالیت دوم نشون داده می‌شه :)

 

ادامه ی آموزش در این پست


برگرفته شده از AndroidCode.ir

استفاده از مفاهیم ضمنی (implicit intents)

پنجشنبه, ۱۸ خرداد ۱۳۹۱، ۰۳:۴۱ ب.ظ

تماشای برخط [لینک مستقیم] فیلم «آموزش نحوه استفاده از مفاهیم ضمنی»

زیرنویس انگلیسی [English Subtitile]

دریافت نسخه ی pdf این آموزش [2.78 مگابایت]

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

۱.شبیه ساز رو اجرا می کنم و برنامه‌ی Gallery رو از تو منوی برنامه‌ها اجرا می‌کنم و یه عکس از توش انتخاب می‌کنم، می‌بینید که بالای عکس یه دکمه share (به‌اشتراک‌گذاری) وجود داره. این دکمه بهتون اجازه می‌ده که این عکس رو برای یکی دیگه بفرستید، اما ممکنه یه عالمه برنامه تو گوشیتون داشته باشید که قادر به انجام این کار باشن. مثل ایمیل یا بلوتوث و ... شما می‌تونید برنامه‌ی خودتون رو به این لیست برنامه‌ها که می‌تونن عکس رو به اشتراک بذارن اضافه کنید و این دقیقا کاریه که یه مفهوم ضمنی (implicit intent) انجام می‌ده.
تو برنامه‌ی Gallery، وقتی دکمه‌ی share رو فشار می‌دیم، این برنامه توسط یه مفهوم ضمنی به سیستم اندروید می‌گه :‌ آیا تو سیستم این گوشی برنامه‌ای وجود داره که بتونه اطلاعات رو بفرسته؟ من یه عکس دارم که می‌خوام بفرستم!
بعد سیستم به کاربر یه لیستی از برنامه‌هایی که قادر به انجام این کار هستن نشون می‌ده. توی شبیه ساز وقتی دکمه share رو می‌زنم، عکس رو تبدیل به MMS می‌کنه بدون اینکه از من سوال کنه چه برنامه‌ای رو می‌خوام، چون تنها برنامه‌ای که تو شبیه‌ساز قادر به مدیریت این کار هست، همین برنامه است.
قبل از اینکه به ادامه آموزش بپردازیم، ممکنه براتون سوال شده باشه که این تصویر رو چطور وارد شبیه‌ساز کردم، خوب اگه بریم سراغ اکلیپس و به DDMS بریم، می‌بینید که یکی از ابزارهای تو نوار بالایی، File Explorer هست که به شما اجازه می‌ده فایل‌های داخل دستگاه رو ببینید، من به sdcard رفتم و عکس مورد نظرم رو گذاشتم، برای گذاشتن فایل باید از دکمه‌ای استفاده کنید که بالا سمت راسته و اگه روش نگه دارید می‌نویسه push a file onto the device. بعد از اینکه فایل رو تو دستگاه گذاشتید باید یه بار reset کنید.
 

خوب برگردیم به ادامه آموزش، گفتیم که برنامه‌ی Gallery با استفاده از یه مفهوم (intent) یه پیغام به سیستم می‌فرسته، حالا از کجا بفهمیم، این مفهوم چه پیغامی رو به فرستاده؟ برای اینکار دکمه‌ی share رو تو شبیه‌ساز می‌زنیم بعد به ایکلیپس می‌ریم و اگه تو LogCat نگاه کنیم، خط های آخرش نوشته :

Starting: Intent { act=android.intent.action.SEND type=image/jpeg ... 

android.intent.action.SEND یه مفهوم ضمنیه، که همراه با خودش نوع داده‌ای تصویر از نوع jpeg رو داره.

۲.بیاید یه برنامه بسازیم که بتونه به پیغامی که دکمه‌ی share می‌ده، جواب بده. اول یه پروژه‌ی جدید می‌سازیم، بعد به AndroidManifest.xml می‌ریم، جایی که می‌تونیم یه مفهوم ضمنی بسازیم، توی پروژه یه فعالیت (activity) اصلی داریم که من اسمشو گذاشتم main. و مشاهده می‌کنید که برای این فعالیت یه intent-filter وجود داره که قبلا دریاره‌اش توضیح دادم. برای ساختن یه مفهوم دیگه، همون بلوک intent-filter  رو کپی میکنیم، هر کدوم از این بلوک‌ها به سیستم می‌گه که این فعالیت قادر به مدیریت این مفاهیمه.

در قسمت action کد جدید به جای MAIN می نویسیم، SEND.

برای category هم مقدار DEFAULT رو به جای LAUNCHER مینویسیم. این category به سیستم می‌گه که این مفهوم ا چه نوعیه که معمولا همون مقدار پیش فرض رو می ذاریم و خلاص :دی

<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>

۳.مورد بعدی که باید اضافه کنیم، یه تگ data است که نوع داده‌ای که می‌تونیم با این مفهوم مدیریت کنیم رو به اندروید می‌گه. یکی از حصوصیاتش mimetype هست که مساوی */image می ذاریم به این معنی که هرنوع عکسی رو می تونه مدیریت کنه.

<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*" />
</intent-filter>

با اضافه کردن همین چند خط کد، برنامه مون این توانایی رو پیدا می‌کنه که اگه کسی خواست عکسی رو بفرسته و روی دکمه‌ی share کلیک کرد، ما هم می‌تونیم اون رو براش مدیریت کنیم.

۴.وقتی عکس از برنامه‌ی Gallery برامون فرستاده شد، بیاید یه راهی برای نمایش اون فراهم کنیم. به فایل main.xml داخل layout می‌ریم و اون فیلد متنی رو پاک می‌کنیم. و از ستون سمت چپ تو قسمت Images & Media یه کدوم از گزینه هایی که می تونه تصویر رو نشون بده رو انتخاب می‌کنیم، و یه عکس الکی می ذاریم روش.

بعد به فایل جاوای مربوط به این xml می‌ریم، که main.java هست. اول یه مرجع از اون imageView که تو فایل xml گذاشتیم می‌گیریم. با نوشتن این کد (قبلا مفصل توضیح داده شده):

 

ImageView image = (ImageView) findViewById(R.id.imageView1);

۵.حالا می‌خوایم اون عکسی که از Gallery برامون فرستاده می‌شه رو به عنوان محتویات این imageView قرار بدیم. با استفاده از تابع setImageURI از کلاس imageView. این تابع باید به جایی اشاره کنه که قراره از اونجا محتویات تصویر مشخص بشه. و ما می‌خوایم این محتویات رو از مفهوم ضمنی بگیریم، پس می‌نویسیم (تو پست قبل توضیح دادم):

image.setImageURI(getIntent().getExtras().get(Intent.EXTRA_STREAM));

از setImageURI خطا می‌گیره، باید crtl+1 رو بزنید و اولین گزینه ی تصحیح اینه که cast کنید. پس اینجوری می شه:

image.setImageURI((Uri) getIntent().getExtras().get(Intent.EXTRA_STREAM));

این Intent.EXTRA_STREAM تمام رشته ای که این مفهوم می‌فرسته رو می‌گیره که در واقع آدرس URI همون عکسه است.

۶.برنامه رو run کنید. وقتی بالا میاد یه خطا می‌گیره که انتظارش هم می‌رفت، چون وقتی همین جوری برنامه رو اجرا کنید آدرس هیچ عکسی فرستاده نشده و موقعی که دارید واقعا برنامه تولید می‌کنید باید به این خطاها فکر کنید و راه حلی براشون پیدا کنید.

۷.حالا به Gallery میریم و روی عکس دکمه‌ی share رو می‌زنیم، و می‌بینیم که برنامه‌ی ما هم به لیستی که می‌تونه این کارو انجام بده اضافه شده! 

و با انتخاب برنامه‌ی خودمون می‌بینیم که عکس فرستاده شده نمایش داده می‌شه.

 

ادامه ی آموزش همین فصل : نحوه‌ی استفاده از منابع


برگرفته شده از AndroidCode.ir

ساختن و استفاده از منابع (Resources)

چهارشنبه, ۲۸ تیر ۱۳۹۱، ۱۲:۱۵ ب.ظ

تماشای برخط [لینک مستقیم] فیلم آموزشی «نحوه ی ساخت و استفاده از منابع»

دریافت نسخه pdf این آموزش [1.73 مگابایت]

‎وقتی دارید برنامتون رو می‌سازید احتمال زیاد از منابع بیرونی هم استفاده خواهید کرد، مثل فایلهای ویدیویی یا شنیداری، تصاویر، xml و ... پس باید بدونید چطور از داخل برنامتون به این منابع ارجاع بدید. منابع برنامتون داخل پوشه ی res ذخیره می شن. و یه سری فایلها به صورت خودکار بهش اضافه می شه مثل :

layout : شامل فایل های xml ای که مربوط به محیط های کاربریه.

values : شامل تمام مقادیریه که توی برنامتون تعریف می کنید و بهشون یه اسم می دید و بعدا با اون اسم بهشون رجوع می کنید و ازشون استفاده می کنید.

‎ فایل string.xml  هم به طور پیش فرض در این فولدر به وجود اومده. نحوه‌ی کارکرد string.xml این طوریه که ما یه سری منابع رشته‌ای داریم که مثلا ‌(با توجه به تصویر) هرجا که تو برناممون بخوایم از Hello World, Main! استفاده کنیم، به جاش می تونیم به این منبع ارجاعش بدیم و بنویسیم hello.

‎ حالا چرا این منابع رو بیرون نگه می‌داریم؟ به خاطر اینکه بتونیم متغیرهای سراسری (global) داشته باشیم، مثلا می تونیم چند تا فولدر برای زبان های مختلف داشته باشیم و فقط لازمه که به فایل xml مربوط به اون زبان بریم و دیگه لازم نیست تمام کدهای برناممون رو به خاطر تغییر زبان کاربر تغییر بدیم.

‎ ۲.اگه به سایت اصلی توسعه اندروید مراجعه کنید یه قسمت داره به اسم API Guide که توش راهنمایی های مفیدی برای ساخت برنامه کرده، یکی  از این راهنماها مربوط به منابع می شه، خود اندروید به طور پیش فرض یه سری از فولدرها رو تو res تشخیص می‌ده مثلا 

‎ اگه فولدر anim رو درست کنید و توش یه فایل xml مخصوص انیمیشن بذارید، اندروید متوجه می شه که انیمیشنه. (تو آموزش های بعدی مفصل به انیمیشن می پردازیم).

‎ یا مثلا اگه می‌خواید یه لیستی از رنگ ها رو در برنامتون استفاده کنید می تونید تو فولدر color بذاریدشون.

‎ هر کدوم از عکس‌هامون یا هر فایل xml مربوط به گرافیک در داحل فولدر drawable قرار می گیره.

‎ فولدر layout شامل فایلهای xml مربوط به چیدمان صفحه است.

‎ اگه بخوایم منو برای برناممون بسازیم (که بعدا آموزش داده خواهد شد) باید اونو تو فولدر menu بذاریم و ...

‎ چون تمام این منابع نوعی assets هستن، ممکنه از خودتون بپرسید پس این فولدر assets چیه (معمولا بالای فولدره bin هست)، در واقع می تونید منابعتون رو تو این فولدر بذارید ولی نمی تونید با یک id بهشون ارجاع بدید. به همین خاطر بهتره تمام منابع رو توی همون فولدر res قرار بدیم چون به طور خودکار براشون id ساخته می شه و با دستور R.id می تونید بهشون رجوع کنید.

‎ ۳.اگه تو زیر شاخه های فولدر res دقت کرده باشید، خود فولدر drawable به تنهایی وجود نداره بلکه سه تا فولدر drawable-hdpi، drawable-ldpi و drawable-mdpi وجود دارن، این به خاطر یک ویژگی مهمه اندرویده که دستگاه ها رو به سه وضوح تصویر تقسیم بندی کرده : دستگاه‌های با وضوح تصویر بالا (High dpi)، دستگاه‌های با وضوح تصویر متوسط (Medium dpi) و دستگاه‌های با وضوح تصویر پایین (Low dpi). برای هر کدوم از این وضوح تصویرهای مختلف می‌تونیم assetهای مربوط به خودشون رو بذاریم، و سیستم اندروید با توجه به دستگاهی که داره روش اجرا می‌شه، asset مربوطه رو بیرون می‌کشه و در برنامه ازش استفاده می کنه (توی یه آموزش دیگه بهش می‌پردازیم) ولی فقط بدونید که اگر از یه asset خواستید که تو همه‌ی وضوح تصاویر استفاده بشه، کافیه فقط توی drawable-hdpi بذاریدش، اون وقت تو یه دستگاه با وضوح تصویر متوسط یا پایین هم سیستم از تو فولدر drawable-hdpi برشون می‌داره.

‎ ۴.راحت‌ترین راه برای اضافه کردن asset به برنامه‌تون اینه که محتوایی که می خواید رو بکشید و تو فولدر مورد نظر ول کنید.

‎ برای این که به پیغام خطا برخورد نکنید حواستون باشه اسم asset هایی که می‌خواید وارد کنید فقط می‌تونه شامل حروف a تا z، اعداد 0 تا 9 و خط زیر باشه.

‎ ۵.تو فولدر gen اگه R.java رو باز کنید، می‌بینید که به اون asset جدیدی که اضافه کردید یه عدد نسبت داده، لازم نیست برای ارجاع به این asset اون عدد رو استفاده کنید بلکه از راه دیگه ای این کارو می‌کنیم که الان توضیح می‌دم. (حواستون باشه که اصلا تغییری هم توی فایل R.java ایجاد نکنید چون این فایل به طور خودکار درست می‌شه و اگه تغییرش بدید برنامتون به هم می‌ریزه.)

۶.من برای این آموزش یه پروژه‌ی جدید ساختم و تا اینجا فقط یه عکس به فولدر drawable-hdpi اضافه کردم، از فولدر res به layout برید و فایل xml اصلی تون رو انتخاب کنید (برای من main.xml هست)، اون فیلد متنی رو پاک کنید، به جاش می‌خوایم عکسی که به پروژه اضافه کردیم رو بذاریم، از منوی کنار Images & Media رو انتخاب کنید و اون المانی که تو عکس دورش قرمز شده رو انتخاب کنید و به داخل صفحه بکشید و ول کنید، حالا ازتون می‌خواد منبع عکس رو مشخص کنید.

‎ برای اینکه متوجه بشید دقیقا چه اتفاقی افتاده، به قسمت ویرایش متنی xml برید، تو مشخصات این تصویر یه قسمت داره به اسم android:src که با کد @drawable/androidcode_logo به تصویر مورد نظر ارجاع داده.

اصولا برای ارجاع به هر چیزی از علامت @ استفاده می‌کنیم.مثلا اینجا بعد از علامت @ می خوایم به drawable بریم.

و بعد هم یه تصویر دیگه رو انتخاب می‌کنیم، مثل ic_launcher.

دقت کنید که برای رسیدن به androidcode_logo یا هر asset دیگه‌ای، نیازی نبود که بنویسیم @drawable-hdpi فقط کافی بود از @drawable استفاده کنیم. اینکه این asset از کدوم وضوح تصویر انتخاب بشه رو، خود سیستم عامل اندروید با توجه گوشی کاربر انجام می‌ده. حالا اگه به قسمت گرافیکی main.xml بریم، می‌بینیم که تصویر عوض شده.

خوب این روش ارجاع در فایل های xml بود، حالا اگه از فایل‌های جاوا بخوایم به منابعمون ارجاع بدیم باید چی کار کنیم؟

۷.اول یه ارجاع از خود ImageView می‌گیریم :

ImageView ax = (ImageView) findViewById (R.id.imageView1);

بعد منبع این ImageView رو می‌ذاریم عکسی که می‌خوایم :

ax.setImageResource(R.drawable.androidcode_logo);

این دستور باعث می‌شه وقتی که برنامه اجرا شد، منبع عکس از اون چیزی که بوده، تغییر پیدا کنه به R.drawable.androidcode_logo و وقتی برنامه رو اجرا می‌کنیم، این خروجی رو می‌بینیم.

 

فایل main.xml :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical" >
<ImageView
  android:id="@+id/imageView1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:src="@drawable/ic_launcher" />
</LinearLayout>

فایل Main.java :

package ir.AndroidCode.intent;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ImageView;
  public class Main extends Activity {
    @Overridepublic void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.main);
       
       ImageView ax = (ImageView) findViewById (R.id.imageView1);
       ax.setImageResource(R.drawable.androidcode_logo);
    }
}

برگرفته شده از AndroidCode.ir





گفتگو با خدا

http://www.azarnewsonline.com/aksha/bpvtszm9qm1spoxqgfy.jpg

 

این مطلب اولین بار در سال ۲۰۰۱ توسط زنی به نام ریتا در وب سایت یک کلیسا قرار گرفت.

این مطلب کوتاه به اندازه ای تاثیر گذار و ساده بود که طی مدت ۴ روز بیش از پانصد هزار نفر

به سایت کلیسا ی توسکالوسای ایالت آلاباما سر زدند.

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

 

Interview with god

گفتگو با خدا

I dreamed I had an Interview with god

خواب دیدم در خواب با خدا گفتگویی داشتم.

So you would like to Interview me? “God asked.”

خدا گفت : پس میخواهی با من گفتگو کنی؟

If you have the time “I said”

گفتم : اگر وقت داشته باشید.

God smiled

خدا لبخند زد

My time is eternity

وقت من ابدی است.

What questions do you have in mind for me?

چه سوالاتی در ذهن داری که میخواهی بپرسی؟

What surprises you most about humankind?

چه چیز بیش از همه شما را در مورد انسان متعجب می کند؟

Go answered ….

خدا پاسخ داد …

That they get bored with childhood.

این که آنها از بودن در دوران کودکی ملول می شوند.

They rush to grow up and then long to be children again.

عجله دارند که زودتر بزرگ شوند و بعد حسرت دوران کودکی را می خورند.

That they lose their health to make money

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

And then lose their money to restore their health.

و بعد پولشان را خرج حفظ سلامتی میکنند.

By thinking anxiously about the future. That

این که با نگرانی نسبت به آینده فکر میکنند.

They forget the present.

زمان حال فراموش شان می شود.

Such that they live in neither the present nor the future.

آنچنان که دیگر نه در آینده زندگی میکنند و نه در حال.

That they live as if they will never die.

این که چنان زندگی میکنند که گویی هرگز نخواهند مرد.

And die as if they had never lived.

و آنچنان میمیرند که گویی هرگز زنده نبوده اند.

And then I asked …

بعد پرسیدم …

As the creator of people what are some of life’s lessons you want them to learn?

به عنوان خالق انسان ها ، میخواهید آنها چه درس هایی از زندگی را یاد بگیرند؟

God replied with a smile.

خدا دوباره با لبخند پاسخ داد.

To learn they cannot make anyone love them.

یاد بگیرند که نمی توان دیگران را مجبور به دوست داشتن خود کرد.

What they can do is let themselves be loved.

اما می توان محبوب دیگران شد.

learn that it is not good to compare themselves to others.

یاد بگیرند که خوب نیست خود را با دیگران مقایسه کنند.

To learn that a rich person is not one who has the most.

یاد بگیرند که ثروتمند کسی نیست که دارایی بیشتری دارد.

But is one who needs the least.

بلکه کسی است که نیاز کم تری دارد

To learn that it takes only a few seconds to open profound wounds in persons we love.

یاد بگیرند که ظرف چند ثانیه می توانیم زخمی عمیق در دل کسانی که دوست شان داریم ایجاد کنیم.

And it takes many years to heal them.

و سال ها وقت لازم خواهد بود تا آن زخم التیام یابد.

To learn to forgive by practicing forgiveness.

با بخشیدن ، بخشش یاد بگیرند.

To learn that there are persons who love them dearly.

یاد بگیرند کسانی هستند که آنها را عمیقا دوست دارند.

But simply do not know how to express or show their feelings.

اما بلد نیستند احساس شان را ابراز کنند یا نشان دهند.

To learn that two people can look at the same thing and see it differently.

یاد بگیرند که میشود دو نفر به یک موضوع واحد نگاه کنند و آن را متفاوت ببینند.

To learn that it is not always enough that they are forgiven by others.

یاد بگیرند که همیشه کافی نیست دیگران آنها را ببخشند.

They must forgive themselves.

بلکه خودشان هم باید خود را ببخشند.

And to learn that I am here.

و یاد بگیرند که من اینجا هستم.

مقایسه وایمکس مبین نت با ایرانسل

مقایسه وایمکس مبین نت با ایرانسل

مقایسه وایمکس مبین نت با ایرانسل
تا چندی پیش اتصال به اینترنت تنها از طریقDial-up ،دسترسی از طریق خط تلفن با استفاده از فناوری XDSL و یا Wi-Fi امکانپذی بود اما اکنون با ظهور وایمکس جهان در آستانه تحولی دیگر در عصر اینترنت قرار گرفته است امروز پس از گذشت دو سال و نیم از عمر وایمکس در ایران بر اساس آخرین آمار اعلام شده از سوی سازمان تنظیم مقررات اپراتور‌ها توانسته‌اند به ۴۰۰ هزار کاربر وایمکس خدمات ارتباطات بی سیم ارایه دهند.
به گزارش عرش نیوز اصغریان مدیر کل نظارت بر سرویس‌های IT سازمان تنظیم مقررات عملکرد اپراتور‌های وایمکس را خوب ارزیابی می‌کند و می‌گوید:نرخ رشد وایمکس در ابتدای سال ۹۰، ۸۳ هزار نفر بود که این نرخ در پایان همان سال به ۴۰۰ هزار نفر رسیده که نشان از رشد ۴ درصدی دارد.
وی بر این عقیده است که با توجه به نو بودن تکنولوژی و آشنا نبودن مردم با این فناوری استقبال نه صد در صد بلکه نسبت به سایر تکنولوژی‌ها از استقبال بهتری برخوردار بوده است.
وی در مقایسه وایمکس با GSM‌ می‌گوید: نرخ رشدGSM در آغاز راه و در ۵ سال اول را وقتی با وایمکس مقایسه می‌کنید نه به لحاظ تکنولوژی بلکه از منظر تشابه در نیازمندی‌های پایه مانند نصب تجهیزات رادیویی ، BTS و لایه انتقال می‌بینید که از روند رشد مناسبی برخوردار بوده و توانسته مشتری‌های خاص خود را پیدا کند.
مدیر کل نظارت بر سرویس‌های IT سازمان تنظیم مقررات بر این عقیده است فضای رقابتی ایجاب می‌کند که اپراتور‌های وایمکس خود را به نقطه‌ای برسانند که از طرح‌های توسعه‌ای و اجرایی خود پیشی بگیرند. 
وایمکس در آغاز راه
اسفند سال۸۷ پروانه وایمکس به ۴ شرکت ایرانسل،مبین‌نت، اسپادان و رایان دانش از سوی سازمان تنظیم مقررات اعطا شد.
ردیف

شرکت

تعداد استان

جمع مبلغ پایه حق الامتیاز (میلیارد ریال)

جمع مبلغ بدست آمده مزایده (میلیارد ریال)

۱

مبین نت

۳۰
۸۶۲
۱۰۶۶٫۷۶
۲
ایرانسل
۶
۵۲۴
۶۹۰٫۳
۳
اسپادان
۱
۷۱
۹۰
۴

رایان دانش

۱
۱۷
۲۰
 اینکه در حال حاضر شرکت‌ها به تفکیک تا چه اندازه توانسته‌اند در ارایه این تکنولوژی موفق عمل کنند جای بحث جداگانه‌ای دارد. اما نگارنده در این گزارش بر آن است تا خوانندگان را بیشتر با خدمات این تکنولوژی آشنا کند. به‌همین علت به تفکیک اطلاعات پایه و کلیدی راجع به نوع سرویس‌ها و تعرفه‌ها و نقاط تحت پوشش دو اپراتور که سهم بیشتری از بازار وایمکس را در اختیار خوانندگان قرار می‌دهد.
شرکت ارتباطات مبین نت
شرکت ارتباطات مبین نت از اسفند سال۸۷ پروانه سراسری ارتباطات بی سیم ایران مبتنی بر فناوری WiMAX را در ۳۰ استان (کل کشور) از طرف سازمان تنظیم مقررات و ارتباطات رادیوئی دریافت کرد.
بر اساس آخرین آمار اعلام شده از سوی این اپراتور،تعداد شهرهای تحت پوشش اینترنت پرسرعت وایمکس مبین‌نت به ۱۱۸ شهر رسیده است.
اینترنت پرسرعت اشتراکی بی سیم 
در برنامه ریزی و قیمت گذاری خدمات اینترنت پرسرعت سه دسته از متقاضیان (کم مصرف، متوسط مصرف و پرمصرف)، طرح های مختلفی تنظیم شده است .در جدول زیر طرح های مختلف خدمات اینترنت پرسرعت مبین نت در شهرهای مختلف ایران (از جمله مناطق آزاد و ویژه اقتصادی) آمده است:
طرح
زمان
نام
سرعت تا
محدودیت حجم

هزینه طرح در زمان (ریال)

هزینه گیگابایت اضافه (ریال)

کم مصرف

یک ماهه

R1101
128Kbps
2GB
80.000
60.000
R1102
128Kbps
4GB
140.000
60.000
B1101
512Kbps
2GB
100.000
80.000
B1102
1024Kbps
4GB
240.000
80.000
B1107
2048Kbps
2GB
160.000
120.000

شش ماهه

R1103
128Kbps
6GB
300.000
60.000
R1104
128Kbps
12GB
540.000
60.000
B1103
512Kbps
6GB
360.000
80.000
B1104
1024Kbps
12GB
840.000
80.000
B1108
2048Kbps
8GB
800.000
120.000

یک ساله

R1105
128Kbps
9GB
540.000
60.000
R1106
128Kbps
18GB
900.000
60.000
B1105
512Kbps
9GB
630.000
80.000
B1106
1024Kbps
18GB
1.440.000
80.000
B1109
2048Kbps
12GB
1.440.000
120.000

متوسط مصرف

یک ماهه

B1110
512Kbps
6GB
270.000
60.000
B1111
1024Kbps
8GB
400.000
60.000

سه ماهه

B1112
512Kbps
12GB
560.000
60.000
B1113
1024Kbps
16GB
830.000
60.000

شش ماهه

B1114
512Kbps
18GB
900.000
60.000
B1115
1024Kbps
24GB
1.320.000
60.000
پرمصرف

یک ماهه

B1116
512Kbps
20GB
550.000
50.000
B1117
1024Kbps
40GB
800.000
50.000

سه ماهه

B1118
512Kbps
40GB
1.400.000
50.000
B1119
1024Kbps
80GB
2.000.000
50.000

شش ماهه

B1120
512Kbps
60GB
2.400.000
50.000
B1121
1024Kbps
120GB
3.600.000
50.000

R: خانگی    -    B: اداری
مشترکین خانگی مجاز به دریافت خدمات با سرعت بالاتر از ۱۲۸ کیلوبیت بر ثانیه نمی باشند.

هزینه نصب مودم داخلی در تهران ۱۲۰٫۰۰۰ ریال و در شهرستان ها ۸۰٫۰۰۰ ریال می‌باشد.
ضریب اشتراک در طرح های فوق یک به چهار می‌باشد

 

همانگونه که مشاهده می‌شود خدمات اینترنت پرسرعت مبین نت بصورت حجم ترافیک ارسال و دریافت محدود برای مشترکین در یک بازه زمانی مشخص ارائه می گردد. برای طرح های با حجم محدود استفاده در ساعات دو الی هشت صبح رایگان می‌باشد (حجم اطلاعات ارسالی و دریافتی در این محدوده های زمانی محاسبه نخواهد گشت.) در ضمن در کلیه طرح های فوق پس از برقراری ارتباط CPE با شبکه یک آدرس IP نامشخص معتبر، به مشترک اختصاص داده می‌شود. 
طرح های پیش پرداخت نامحدود ماهیانه: 
طبق مصوبات کمیسیون تنظیم مقررات ارتباطات جلسه شماره ۸۷ مبین نت موظف گردیده است خدمات اینترنت پرسرعت بی سیم با فناوری وایمکس را نیز بصورت نامحدود ارائه نماید که الیته در طرح های نامحدود وایمکس مبین نت طبق تعرفه های مصوب شده ضریب به اشتراک یک به ده می‌باشد که در جدول زیر مشاهده می گردد. پر واضح است که به اشتراک گذاردن یک پهنای باند مشخص بعنوان مثال ۵۱۲ کیلوبیت بر ثانیه بین ده نفر با ارزش های مبین نت که همانا ارائه خدمات با کفیت مطلوب می‌باشد، مغایر می‌باشد.

 

طرح
 
نام
سرعت تا
ضریب اشتراک
محدودیت ساعت
هزینه (ریال)

نامحدود

یک ماهه

CR41
128Kbps

یک به ده

ندارد
۳۶۸٫۰۰۰
CB41
256Kbps

یک به ده

ندارد
۴۱۴٫۰۰۰
CB42
512Kbps

یک به ده

ندارد
۵۰۴٫۰۰۰
CB43
1024Kbps

یک به ده

ندارد
۶۸۶٫۰۰۰
CB1101
512Kbps

یک به چهار

۸ الی ۲۰
۴۰۰٫۰۰۰
CB1102
1024Kbps

یک به چهار

۸ الی ۲۰
۵۵۰٫۰۰۰

R: خانگی    -    B: اداری
مشترکین خانگی مجاز به دریافت خدمات با سرعت بالاتر از ۱۲۸ کیلوبیت بر ثانیه نمی باشند.

هزینه نصب مودم داخلی در تهران ۱۲۰٫۰۰۰ ریال و در شهرستان ها ۸۰٫۰۰۰ ریال می‌باشد.

 

 

ارائه IP ثابت بر روی طرح های اینترنت پرسرعت اشتراکی:
در کلیه طرح های اینترنت پرسرعت اشتراکی بی سیم پس از برقراری ارتباط با شبکه یک IP معتبر غیرثابت از سوی مرکز تخصیص داده می‌شود. جهت دریافت IP ثابت در مدت زمان اشتراک می‌توانید درخواست خود را با مراجعه به بخش پشتیبانی و با تکمیل نمودن فرم درخواست IP ارائه فرمایید. هزینه تخصیص IP ثابت در دوره های زمانی مختلف به شرح زیر می‌باشد:

 

محدودیت زمان
هزینه (ریال)
یک ماه
۱۰۰٫۰۰۰
سه ماه
۲۰۰٫۰۰۰
شش ماه
۳۰۰٫۰۰۰
یک سال
۵۰۰٫۰۰۰
دو سال
۱٫۰۰۰٫۰۰۰

قیمت های فوق بدون احتساب مالیات بر ارزش افزوده (۵ درصد) می‌باشد.

اینترنت شخصی با مودم جیبی

 

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

تعرفه مودم‌های جیبی

مدت اعتبار
نام طرح
پهنای باند
محدودیت حجم

مبلغ با مودم (بدون احتساب ۵%)

گیگابایت اضافه
دو ساله
MJ1102
512Kbps
30GB
3.000.000 ریال
۶۰٫۰۰۰ریال
یک ساله
MJ1101
128Kbps
15GB
2.000.000 ریال
۶۰٫۰۰۰ ریال
لازم به ذکر است جهت تهیه این مودم ها تنها لازم است به عوامل فروش مدارک احراز هویت ارائه گردد و نیازی به پرداخت هزینه نصب و راه اندازی برای این مودم ها نمی‌باشد (در اصل نصبی انجام نمی گیرد). همانگونه که مشاهده می‌شود خدمات اینترنت شخصی با مودم جیبی وایمکس مبین نت بصورت حجم ترافیک ارسال و دریافت محدود در یک بازه زمانی مشخص با ضریب اشتراک یک به چهار ارائه می‌گردد که مشابه سایر طرح های اینترنت پرسرعت بی سیم وایمکس مبین نت با حجم محدود استفاده در ساعات دو الی هشت صبح رایگان می‌باشد (حجم اطلاعات ارسالی و دریافتی در این محدوده های زمانی محاسبه نخواهد گشت.) در ضمن در کلیه طرح های فوق پس از برقراری ارتباط CPE با شبکه یک آدرس IP نامشخص معتبر، به مشترک اختصاص داده می‌شود. 
مودم (CPE) 
پس از اقدام برای اشتراک خدمات، جهت برقراری ارتباط با شبکه مبین نت بصورت بی سیم، نیاز به تجهیزاتی در سمت مشترک می‌باشد که در اصطلاح به آن CPE و یا مودم وایمکس گفته می‌شود. این تجهیزات نوع های مختلفی دارد که مصارف آنها بر مبنای خدماتی که مشترک از مبین نت دریافت نموده است، متفاوت می‌باشد. در حال حاضر شرکت ارتباطات مبین نت سه نوع CPE ویا مودم وایمکس را عرضه می نماید. 
تلفن ثابت داخلی 
شرکت ارتباطات مبین نت با واگذاری تلفن با پیش شماره ۰۹۴۴ خدمات تلفن ثابت را جهت مکالمه مشترکین در داخل شبکه مبین نت ارائه می نماید. در ضمن همزمان با همکاری و انعقاد قرارداد با شرکت ارتباطات زیرساخت و سایر اپراتورهای تلفن همراه این مشترکین امکان مکالمه با سایر شماره ها را نیز خواهند داشت. 
شبکه اختصاصی مجازی 
با راه اندازی و بهینه سازی شبکه WiMAX در نقاط مختلف ایران، بستر ارتباطی مناسب و قابل اطمینانی جهت اتصال ساختمان ها و دفاتر شرکت‌ها و سازمان‌هایی که گستردگی جغرافیایی شهری و یا کشوری دارند (از جمله بانک ها، بیمه ها، شهرداری ها و … ) فراهم می‌باشد. لذا شرکت ارتباطات مبین نت با ارائه خدمات شبکه اختصاصی مجازی لایه دو و لایه سه، مناسب ترین گزینه را در اختیار این طیف از مشترکین که به شدت نیاز به شبکه ای مستقل از مخابرات دارند، می گذارد. 
عوامل مجاز فروش وایمکس مبین نت
عوامل مجاز فروش مبین نت در شهرهای مختلف استان‌ها که شبکه وایمکس در آن جا به بهره برداری رسیده، به شرح ذیل است.
آذربایجان شرقی،آذربایجان غربی،اردبیل،اصفهان،البرز،ایلام،بوشهر،تهران،چهار محال بختیاری،خراسان جنوبی،خراسان 
رضوی،خراسان شمالی،خوزستان،زنجان،سمنان،سیستان و بلوچستان،فارس،قزوین،قم؛کردستان،کرمان،کرمانشاه،کهکیلویه و 
بویراحمد،گلستان،گیلان،لرستان،مازندران، مرکزی، هرمزگان، همدان و یزد
پرداخت اینترنتی 
با استفاده از دروازه پرداخت اینترنتی بانک های ملت و پارسیان می‌توان وجه موردنظر خود را با استفاده از کارت بانک های عضو شبکه شتاب بصورت اینترنتی به حساب شرکت ارتباطات مبین نت واریز نمایید. لازم به ذکر است که با مشخص نمودن مبلغ موردنظر در فرم زیر و فشردن کلید شروع عملیات پرداخت اینترنتی، شما به دروازه پرداخت انتخابی خود انتقال می یابید و لذا هیچگونه از اطلاعات شخصی شما ازقبیل شماره کارت، رمز عبور و تاریخ اعتبار در درگاه مبین نت وارد نمی گردد. همواره توجه داشته باشید که جهت انجام هرگونه عمل پرداخت، درج و اعلام نمودن شناسه پرداخت اجباری و ضروری است و در غیر این صورت امکان انجام عمل پرداخت میسر نمی‌باشد. 
اینترنت پرسرعت بی‌سیم دراماکن عمومی تهران 
یکی از خدمات این اپراتور در حال حاضر طرح WiMo (وایمو)، شبکه‌ اینترنت پرسرعت بی‌سیم محلی با پشتیبانی وایمکس مبین‌نت است، به‌گونه‌ای که با هر دستگاه مجهز به فناوری Wi-Fi، مانند گوشی‌ موبایل، تبلت و لپ‌تاپ، می‌توان با سرعت مناسب به شبکه‌ جهانی اینترنت دسترسی داشت.
بزرگ‌ترین ویژگی «وایمو»، شیوه‌ استفاده بسیار آسان از آن است، طوری که کاربران به ساده‌ترین شکل ممکن و تنها با روشن کردن Wi-Fi دستگاه خود و انتخاب شبکه‌ WiMo، می‌توانند به اینترنت متصل شوند. اکنون تنها کار باقی مانده، باز کردن مرورگر وبی هم‌چون اینترنت اکسپلورر یا فایرفاکس و گشت و گذار در دنیای اینترنت با سرعت مطلوب است.
هنگامی که برای نخستین بار به شبکه‌ «وایمو» وصل می‌شوید، باید با استفاده از شماره‌ موبایل خود در سیستم ثبت‌نام کنید تا شماره‌ موبایل شما به نام کاربری‌تان در شبکه‌ «وایمو» بدل شود. برای این کار کافی است عبارت WiMo را به شماره ۳۰۰۰۹۴۶۶ پیامک کنید تا پس از چند لحظه رمز عبورتان برای شما پیامک شود.
هنگامی که برای نخستین بار به شبکه‌ «وایمو» وصل می‌شوید، می‌توانید یک ساعت از اینترنت پرسرعت بی‌سیم بدون محدودیت از نظر سرعت و حجم استفاده کنید. این دوره‌ پس از یک ساعت به پایان می‌رسد و از‌ این پس با این‌که هنوز اینترنت کاملاً رایگان است، اما سرعت ارتباط محدود می‌شود.اما هر زمان که بخواهید، می‌توانید با تهیه کردن طرح‌های گوناگون حجمی و زمانی «وایمو» از روی سایت «وایمو»، سرعت اینترنت خود را دوباره افزایش دهید.
                                             اپراتور دوم ایرانسل
شرکت ایرانسل از اسفند سال۸۷ پروانه سراسری ارتباطات بی سیم ایران مبتنی بر فناوری WiMAX را در ۶ استان از طرف سازمان تنظیم مقررات و ارتباطات رادیوئی دریافت کرد.
تجربه‌ای متفاوت از اینترنت!
وایمکس ایرانسل گزینه ای برای کاربران خانگی و تجاری است تا بتوانند با طی تنها ۵ گام ساده، در منزل و یا محل کار خود از امکاناتی استثنائی برای بهره‌گیری از اینترنت استفاده نمایند. اگر مایلید به این کاربران بپیوندید، تنها کافیست:
١- از طریق یکی از فروشندگان مجاز منتخب ایرانسل، و یا صفحه «وایمکس چیست» در وب سایت ایرانسل، اطلاعات اولیه مورد نیاز را کسب کنید؛ 
۲- طرح تعرفه مورد نظر خود را انتخاب کنید؛
٣- ثبت نام خود را تکمیل کنید؛ 
۴- هزینه های مربوطه را پرداخت کنید؛ 
۵- منتظر بمانید تا تجهیزات برایتان نصب و سرویس برقرار شود!
برای آغاز استفاده از خدمات وایمکس، لازم است با انتخاب گزینه‌ای که مناسب ترین روش برای رفع نیازهای اینترنتی شما محسوب می‌شود به کاربران وایمکس بپیوندید. می‌توانید یکی از دو روش پرداخت را انتخاب نموده و مشخص کنید که تمایل به پرداخت هزینه‌ها در ابتدای دوره دارید و یا ترجیح می‌دهید هزینه خدمات در پایان هر دوره در قالب یک قبض برای شما ارسال شود. بدین ترتیب بر اساس اولویت انتخابی تان، می‌توانید کاربر سرویس اعتباری یا دائمی شوید. برای شروع کافیست به یکی از فروشندگان منتخب ما مراجعه نمایید. پس از انجام ثبت نام، متعاقباً زمان مراجعه کارشناس ما به محل سکونت شما (با هماهنگی کاربر) به منظور دریافت اسناد، انعقاد قرارداد و تحویل مودم، به شما اعلام خواهد شد. 
سرویس اعتباری: 
با انتخاب سرویس اعتباری، نیازی نیست در پایان هر ماه قبض پرداخت کنید. شما طرح تعرفه خود را بر اساس مبلغی که می خواهید به صورت ماهانه برای استفاده از وایمکس بپردازید انتخاب می‌نمایید. در صورتی که قصد دارید کاربر خدمات اعتباری ما باشید، توجه داشته باشید که تنها لازم است اطمینان حاصل کنید که در حساب خود اعتبار کافی دارید.

 

گزینه های اشتراک طرح های شش ماهه ( مختص کاربران فعلی که تمایل دارند طرح خود را تمدید نمایند ) در جدول زیر ارائه شده اند:

سرویس دائمی:
کاربران سرویس دائمی می‌توانند تا میزان مورد نظر خود از این سرویس استفاده کنند، با این تفاوت که این گروه از کاربران باید در پایان دوره، صورتحساب پرداخت کنند. لازم به ذکر است که مهلت پرداخت برای دوره جدید این دسته از کاربران ۳۰ روز پس از صدور صورت حساب می باشد. این کاربران در زمان ثبت نام و اشتراک سرویس، مبلغی را به عنوان سپرده‌ در اختیار ایرانسل قرار می دهند که میزان سقف مصرف آنها، بر اساس مقدار سپرده مذکور تعیین می‌شود و از آنجایی که دوره مصرف برای این کاربران دو ماهه می باشد، لازم است در هنگام ثبت نام علاوه بر سپرده، هزینه اشتراک را برای دو ماه بپردازند. در پایان مدت قرارداد یا در صورتی که در هر زمان تصمیم به خاتمه آن بگیرید، سپرده پرداختی به شما مسترد خواهد شد. برای اشتراک سرویس دائمی، ابتدا لازم است یکی از طرح‌های تعرفه ارائه شده توسط ایرانسل را انتخاب کنید. ابتدا گزینه‌های موجود برای کاربران دائمی را بررسی نموده و مناسب‌ترین طرح را انتخاب نمایید. آنگاه، لازم است نسبت به خرید یک طرح تعرفه که شامل سرعت مورد نظر و میزان ترافیک ماهانه دلخواه تان است اقدام نمایید. همچنین، می توانید با خرید بسته‌های افزایشی، حجم ترافیک مصرفی یا دوره اعتبار بسته خود را افزایش دهید. 
لطفاً توجه داشته باشید که کلیه کاربران وایمکس ایرانسل، صرف نظر از روش پرداخت انتخابی خود می‌توانند در هر زمان به ریز صورتحساب و جزئیات استفاده خود از خدمات، دسترسی داشته باشند.
           گزینه های اشتراک سرویس دائمی وایمکس در جدول زیر نشان داده شده اند: 

- گزینه های استفاده از تعرفه مصرف آزاد در جدول زیر نشان داده شده اند:

نکاتی که باید به خاطر داشته باشید:
- به منظور یکپارچه سازی دریافت وجوه، مبالغ قابل پرداخت (نظیر هزینه اشتراک و …)، در اولین روز هر ماه از حساب کاربران اعتباری کسر می‌شود. در صورتی که از اواسط ماه، کاربر سرویس شده باشید، تنها لازم است هزینه روزهای باقیمانده را پرداخت نمایید و سپس با شروع ماه دوم، از اولین روز ماه هزینه ماهانه طرح تعرفه انتخابی (حق اشتراک) مربوط به کل ماه از شما اخذ می‌گردد.
 
- میزان استفاده کاربران دائمی از سرویس، نمی‌تواند از سقف اعتبار آنها، که معادل مبلغ سپرده اولیه است بیشتر باشد. اگر مایلید بیشتر از سقف اعتبار فعلی خود از سرویس استفاده کنید، لازم است برای جلوگیری از تعلیق سرویس، نسبت به تسویه حساب خود اقدام نموده و یا با افزایش مبلغ سپرده حساب، سقف اعتبار خود را افزایش دهید.
 
-طرح های تعرفه بلند مدت (پرداخت یکجای اشتراک ۶ ماهه)، تنها ویژه کاربران اعتباری می باشد.
- ارائه خدمات به متقاضیان استفاده از سرعت های بیشتر از ١٢٨ کیلو بیت بر ثانیه، مشمول قوانین سازمان تنظیم مقررات و ارتباطات رادیویی کشور می باشد.
- در مورد طرح‌های تعرفه با هزینۀ اشتراک بالاتر، حداقل سقف اعتبار برای کاربران دائمی بیشتر خواهد بود.
- برای استفاده از اینترنت ١٢٨ و ٢۵۶ کیلوبیت بر ثانیه مصرف آزاد، هیچ هزینه ای به عنوان حق اشتراک ماهیانه، در ابتدای دوره از شما دریافت نمی‌گردد.
- به منظور تضمین کیفیت سرویس‌های ارائه شده، ایرانسل در مورد طرح‌های نامحدود اقدام به اعمال «خط مشی مصرف صحیح» نموده است. سقف کاربرد نامحدودی برای کاربران در نظر گرفته شده است تا بتوانند بدون نگرانی به گردش در اینترنت و دانلود بپردازند. با این حال، در صورتی که کاربر به طور غیرمعمول از پهنای باند استفاده کرده و به دانلود بیش از حد اقدام نماید، از دوره بعدی، سیاست محدودسازی پهنای باند در مورد وی اعمال خواهد شد و از آن پس، قادر به استفاده از سرویس، به صورت نامحدود نخواهد بود.
هزینه نصب و راه اندازی مودم (بدون احتساب مالیات) ٨٠٠٠٠ ریال می باشد.
روش های پرداخت هزینه اشتراک وایمکس ایرانسل:
۱. پرداخت اینترنتی
برای استفاده از سامانه پرداخت اینترنتی لازم است وارد سیستم کنترل حساب اینترنتی (e-Care) شوید و پس از کلیک بر گزینه «پرداخت ها»، به قسمت «پرداخت صورت حساب/ پرداخت اینترنتی» مراجعه کنید.
۲. خرید کارت شارژ و بارگذاری اینترنتی
 
برای بارگذاری کارت شارژ لازم است وارد سیستم کنترل حساب اینترنتی (e-Care) شوید و پس از کلیک بر گزینه «پرداخت ها»، به قسمت «شارژ مجدد» مراجعه کنید.
٣. خرید کارت شارژ و بارگذاری از طریق سیم کارت ایرانسل 

برای پرداخت از این طریق، پس از خرید کارت شارژ ایرانسل، کد دستوری زیر را از خط ایرانسل خود شماره گیری نمایید:
لطفا توجه داشته باشید این سرویس تنها برای آن دسته از کاربران وایمکس قابل استفاده می‌باشد که در هنگام پر کردن فرم ثبت نام، در قسمت «تلفن همراه» شماره تلفن همراه ایرانسل خود را وارد نموده اند؛ بنابراین کاربرانی که از تلفن های همراه سایر اپراتورها استفاده می کنند و یا شماره تلفن همراه ایرانسل خود را در هنگام ثبت نام ارائه نکرده اند، امکان استفاده از این سرویس را نخواهند داشت. این افراد می‌توانند برای تعویض شماره تلفن همراه اعلامی در پرونده وایمکس خود، به قسمت خدمات مشترکین در کنترل حساب اینترنتی مراجعه نمایند و با کلیک بر گزینه تغییر اطلاعات کاربر، شماره تلفن همراه خود را تغییر دهند.
 
بسته افزایشی
 
در صورتی که میزان ترافیک ماهانه در نظر گرفته شده در طرح تعرفه انتخابی شما به پایان رسیده است، اگر در اواسط ماه متوجه شده‌اید که طرح تعرفه انتخابی جوابگوی نیاز ماهانه شما نیست و حتی اگر از ابتدای ماه به این نتیجه رسیده‌اید که میزان مصرف شما بیش از مقدار تعیین شده در طرح تعرفه انتخابی‌تان خواهد بود، می‌توان از بسته‌های افزایشی و بر اساس نیازتان از آنها بهره مند شوید. همچنین زمانی که میزان ترافیک ماهانه موجود در طرح تعرفه انتخابی شما به پایان رسید می‌توانید با استفاده از امکان مصرف آزاد، همچنان به استفاده از اینترنت ادامه دهید، یعنی به هر میزان که مصرف می کنید، پرداخت کنید.
 
اعتباری:
 
برای کاربران اعتباری وایمکس، چیزی شبیه به یک صندوق در نظر گرفته شده است که میزان کل پولی که کاربر پرداخت می کند در آن ذخیره شده و با هر بسته افزایشی ای که خریداری می‌شود، میزان مبلغ مربوطه از صندوق کاربر کسر و به یک حساب اختصاصی که مشخصاً برای استفاده از یک سرویس (در این مورد: استفاده از داده‌ها) در نظر گرفته شده است، انتقال می‌یابد. لطفاً توجه کنید که شما به عنوان یک کاربر اعتباری، تنها از مبلغ اعتبار خود (که بر حسب ریال اعلام می‌شود) آگاه خواهید شد و به حجم ترافیک قابل استفاده در بسته افزایشی خود دسترسی نخواهید داشت.
دائمی:
 
بسته‌های افزایشی برای کلیه کاربران دائمی وایمکس نیز بدون در نظر گرفتن طرح تعرفه انتخابی آنها قابل استفاده است. لطفاً توجه داشته باشید که شما به عنوان یک کاربر دائمی می‌توانید بسته افزایشی خود را بر اساس حجم آن خریداری نمایید و هزینه مربوطه در انتهای دوره، در صورت ‌حساب شما منظور می گردد.
در جدول زیر فهرست قیمت بسته‌های افزایشی برای کاربران اعتباری و دائمی را مشاهده می‌کنید:



قابل توجه کاربران دائمی و اعتباری:
- هر بسته افزایشی خریداری شده در طرح اعتباری دارای مبلغ اعتبار و تاریخ انقضا است.
- هزینه بسته افزایشی در پایان هر دوره صدور صورتحساب، در صورتحساب کاربران دائمی درج خواهد شد.
خرید بسته‌های افزایشی متوالی: 
با خرید بسته های افزایشی متوالی، مانده حساب وایمکس نیز به میزان ارزش و تاریخ انقضای بسته، افزایش می‌یابد. 
دسترسی دائمی! 
مصرف آزاد: 
یکی دیگر از خدمات ایرانسل برای کاربران، سرویس «مصرف آزاد» می‌باشد. در صورتی که میزان ترافیک ماهانه طرح تعرفه شما به اتمام رسیده و از طرفی نیاز مصرفی شما به اندازه‌ای نباشد که به خاطر آن بخواهید بسته افزایشی خریداری نمایید، می‌توانید از «مصرف آزاد» استفاده نمایید. هزینه مربوطه از حساب شما کسر شده یا در صورتحساب منظور خواهد شد. هزینه مصرف آزاد از اینترنت ١٠٠ ریال به ازای هر مگابایت می باشد. توجه داشته باشید که هزینه استفاده از اینترنت به صورت آزاد در مقایسه با نرخ معمول طرح تعرفه و یا بسته های افزایشی بالاتر می باشد. 
مودم‌های همراه وایمکس ایرانسل 
برای آنکه کاربر در طول روز و در خارج از منزل یا محیط کار، بتواند از اینترنت پرسرعت استفاده کند. مودم همراه با قیمت ۱۹۹۹۰۰۰نه تنها در نقاط مختلف شهر، بلکه در سفر نیز می‌توان از آن برای اتصال به شبکه اینترنت استفاده کرد. لازم به ذکر است برای استفاده از رایانه شخصی، دستگاه مورد نظر باید مجهز به کارت شبکه بی سیم (Wi-Fi) باشد. 
مودم USB وایمکس ایرانسل، با ابعادی بسیار کوچک، و به قیمت ۹۹۹۰۰۰ ریال به رایانه شخصی کاربر متصل شده و امکان اتصال به شبکه وایمکس را برای وی فراهم می آورد. از این طریق، کاربر قادر خواهد بود به آسانی و در کلیه مناطق تحت پوشش، به اینترنت پرسرعت دسترسی داشته باشد. به همراه مودم USB وایمکس، یک سامانه تقویت کننده نیز ارائه می شود تا در مکانهایی که امواج دریافتی ضعیف هستند، همچنان اینترنت را با کیفیت و سرعتی مناسب در اختیار کاربر قرار دهد. 
مودم های Wi-Fi، با قیمت ۹۹۹۰۰۰ ریال امواج اینترنت پر سرعت را از طریق فناوری وایمکس دریافت و به صورت بی سیم در اختیار کاربر قرار می دهد. بدین ترتیب، کلیه کاربرانی که در منزل و یا محل کار خود از رایانه همراه و سایر سامانه های مجهز به فناوری Wi-Fi استفاده می کنند و در این محدوده جابجا می شوند، می توانند بدون نیاز به کابل، به مودم Wi-Fi وایمکس ایرانسل متصل شوید. همچنین توجه داشته باشید که این مودم ها دارای پورت خروجی RJ45 بوده و کاربرانی که دارای رایانه شخصی می باشند می توانند با استفاده از کابل، به وایمکس ایرانسل متصل شده و از اینترنت استفاده کنند. 
مودم فضای باز نیز با مبلغ ۱۹۹۹۰۰۰ که در خارج از ساختمان نصب می گردد، با قدرت گیرندگی بالا، برای مکانهایی که به علت تراکم ساخت و سازها و یا دلایل فنی، فرکانس های دریافتی ضعیف تر هستند، طراحی شده و توصیه می شود. 
توجه داشته باشید که برای استفاده از سرویس وایمکس، نیازی به خط تلفن ثابت و یا سیم کارت های ایرانسل نداشته و تنها از طریق انواع مودم های وایمکس ایرانسل می توانید از مزایای این سرویس بهره مند شوید. 
به اطلاع کاربرانی که علاقه‌مند به استفاده از روتر (Router) هستند می‌رساند که گزینه‌های زیر از نظر سازگاری با شبکه وایمکس ایرانسل مورد تایید می باشند:

طرح های تعرفه بلندمدت وایمکس
تخفیف ویژه با پرداخت یکجای اشتراک ۶ ماهه! 
علاقه مندان به اسـتفاده از سرویس اعتباری وایمـکس می توانند با انتخاب هر یک از طرح های تعرفه پایه با سرعت های ١٢٨، ٢۵۶ و ۵١٢ کیلوبیت بر ثانیه و پرداخت ۶ ماه اشتراک به صورت یکجا در هنگام ثبت نام، از تخفیف ویژه در هزینه اشـتراک خود بهره‌مند شوند. استفاده از مزایای این طرح برای کاربران خانگی و تجاری مجاز می باشد.

                                           جدول قیمت طرح های تعرفه وایمکس ایرانسل:

نکته: 

- کاربران سایر طرح های تعرفه نیز می توانند نسبت به انتخاب طرح های تعرفه بلند مدت درخواست دهند. توجه داشته باشید که این در خواست در آغاز دوره بعدی بر روی سرویس آنان فعال خواهد شد. 
- در صورت انتخاب این گزینه، هزینه ۶ ماه اشتراک طرح تعرفه انتخابی، فارغ از طرح تعرفه فعلی کاربر از وی اخذ خواهد شد. 
- مدت اعتبار این طرح تنها ۶ ماه خواهد بود و پس از اتمام این دوره، جهت ادامه استفاده از سرویس، کاربر باید نسبت به انتخاب یکی از طرح های تعرفه موجود ایرانسل اقدام نماید. 
- مشترکین تعرفه‌های بلندمدت ۳ یا ۶ ماهه، در هر زمان می‌توانند برای تغییر طرح تعرفه درخواست دهند، اما درخواست در پایان دوره ۳ یا ۶ ماهه اجرا خواهد شد. 
- در صورتی که زمان ثبت نام و فعال سازی حساب کاربر در دو ماه مختلف رخ دهد لازم است که کاربر مابه التفاوت هزینه اشتراک را در زمان فعال سازی پرداخت نماید به همین منظور لازم است کاربر مابه التفاوت ۲۵ روز هزینه اشتراک را در زمان فعال سازی پرداخت نماید. 
• ارائه خدمات به متقاضیان استفاده از سرعت های بیشتر از ١٢٨ کیلو بیت بر ثانیه، مشمول قوانین سازمان تنظیم مقررات و ارتباطات رادیویی کشور می باشد. 
کاربران تجاری 
این سرویس به مالکین شرکتهای بزرگ، بانکها، بیمارستانها، سازمانها، کارخانجات و تمامی کسانی که در راستای گسترش تجارت خود، به بسترهای تجارت الکترونیک نیاز دارند، امکان می دهد تا همگام با تحولات جهانی حرکت نموده و موفقیت تجارت خود را تضمین نمایند. 
مزایای اشتراک وایمکس ایرانسل: 
• ثبت نام آسان
• پهنای باند بین ۱۲۸ کیلو بیت بر ثانیه تا ۲ مگا بیت بر ثانیه بر اساس نوع درخواست کاربر
• تنوع در نحوه پرداخت هزینه ها
• امکان استفاده از چندین مودم برای یک حساب و پرداخت متمرکز
• بازپرداخت مبلغ خرید در صورت عدم رضایت کاربر
• پشتیبانی نصب و راه اندازی مودم های وایمکس
• عدم تداخل امواج و امنیت بالای شبکه 
• توسعه ظرفیت تجارت الکترونیک
• عدم نیاز به کابل کشی و خطوط تلفن
• هزینه های اندک توسعه و نگهداری
شبکه مجازی اختصاصی (VPN): 
شبکه مجازی اختصاصی، کانالی امن برای نقل و انتقال داده ها ایجاد می نماید. شرکت ها وموسساتی که دارای شعب مختلف هستند و در عین حال نمی خواهند از اینترنت برای ارتباط و انتقال اطلاعات استفاده کنند، می توانند با استفاده از شبکه اختصاصی مجازی ایرانسل، بستری امن جهت تبادل داده های مهم و حساس خود فراهم آورند. بیشترین کارایی شبکه اختصاصی مجازی در موارد زیر است:
• برقراری ارتباط بین شعب و دفاتر مختلف شرکت ها و سازمان هایی که دارای پراکندگی جغرافیایی می باشند.
• برقراری ارتباط با شبکه مرکزی شرکت، برای کارمندانی که به اقتضای نوع کار، خارج از محیط سازمان مشغول به فعالیت می باشند و در عین حال نیاز به دسترسی به داده ها و اطلاعات شرکت از راه دور دارند.
تلفن اینترنتی (VoIP): 
تلفن اینترنتی، فناوری نوینی است که شما را قادر می سازد از طریق بستر اینترنت، تماس های تلفنی داخلی و بین المللی برقرار نمایید. با استفاده از این سرویس، برقراری تماس های تلفنی، به ویژه تماس های بین المللی، بسیار مقرون به صرفه خواهد بود.
سرویس تلفن اینترنتی این امکان را برای شما فراهم می نماید که بدون نیاز به هیچ گونه دستگاه تلفن خاص، تنها با استفاده از تلفن های معمولی موجود و یا با استفاده از تلفن نرم افزاری، که بر روی رایانه شما نصب می گردد، در هر ساعت از شبانه روز تماس تلفنی برقرار نموده و با هر نقطه ای از دنیا ارتباط برقرار کنید.
سرویس تلفن اینترنتی علاوه بر برقراری تماس، مزایا و ویژگی های گوناگونی را برای شرکت ها و سازمان ها به همراه دارد که برخی از آنها عبارتند از: کنفرانس تلفنی، ایجاد مرکز تماس، ایجاد تلفن سانترال، اختصاص شماره داخلی و غیره.
توجه داشته باشید که شما می توانید از سرویس تلفن اینترنتی خود، در سایر نقاط تحت پوشش وایمکس ایرانسل نیز استفاده کنید.
اشتراک مودم (CPE Sharing): 
فناوری وایمکـس، به چندین کاربر این امکان را می دهد تا بدون کاهش سرعت، بطور همزمان از یک مودم اشترکی و از سرعت طرح تعرفه انتخابی خود استفاده کنند. تفاوت عمده وایمکس با سایر سرویس های اینترنت پر سرعت، امکان اشتراک همزمان مودم بین چندین کاربر، بدون کاهش پهنای باند هر یک از کاربران است.

روشهای طبیعی برای افزایش تستوسترون

روشهای طبیعی برای افزایش تستوسترون

اگر به دنبال راه‌هایی برای تقویت سطح تستوسترونتان هستید، بد نیست اول نگاهی به سبک زندگیتان بیندازید. بعضی تغییرات که برای بقیه چیزها خوب است می‌تواند برای سطح تستوسترونتان هم مفید باشد.

در زیر به شش راه تقویت تستوسترون به صورت طبیعی اشاره می‌کنیم:

۱. به اندازه کافی بخوابید.
خواب ناکافی می‌تواند برای تسسوترون بدن شما هم عواقبی به دنبال داشته باشد.

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

خواب را به یکی از اولویت‌های زندگیتان تبدیل کنید و سعی کنید حداقل هفت تا هشت ساعت در شبانه‌روز بخوابید، حتی اگر مجبور شوید برنامه‌هایتان را دوباره تنظیم کنید. برای خوابیدنتان جایزه تعیین کنید، درست مثل وقتی می‌توانید رژیم بگیرید یا ورزش کنید. این هم به همان اندازه مهم است.
اگر برای خوابیدن مشکل دارید، حتماً با پزشک مشورت کنید.

۲. وزنتان را در محدوده سلامت نگه دارید.


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

۳. فعال باشید.

تستوسترون با نیازهای بدنتان تطابق می‌یابد. اگر بیشتر وقتتان را روی کاناپه دراز بکشید، مغزتان این پیام را دریافت می‌کند که نیاز به تستوسترون زیادی برای تقویت عضلات و استخوان‌هایتان ندارید.

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

اگر الان کم ورزش می‌کنید، توصیه ما این است که اینطور شروع کنید:

پیاده‌روی تند حداقل ۱۰ تا ۲۰ دقیقه در روز.

تقویت قدرت با چند جلسه تمرین  در هفته با وزنه یا کش‌های ورزشی. برای یاد گرفتن شکل صحیح حرکات و جلوگیری از آسیبدیدگی حتماً از یک مربی کمک بگیرید.

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

۴. استرستان را کنترل کنید.

اگر تحت استرس مداوم باشید، بدنتان مقدار زیادی هورمون استرس، کورتیزول، ترشح می‌کند و قدرت آن برای تولید تستوسترون کمتر می‌شود. درنتیجه، کنترل کردن استرستان برای بالا نگه داشتن سطح تستوسترون در بدنتان اهمیت زیادی دارد.

توصیه‌ای که می‌توانیم برای مردان پراسترس داشته باشیم این است:

ساعت‌های کاریتان را کمتر کنید. سعی کنید بیشتر از ۱۰ ساعت در روز کار نکنید.

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

۵. داروهایتان را بررسی کنید.

بعضی داروها ممکن است موجب کاهش تستوسترون در بدن شوند. این داروها عبارتند از:

داروهای افیونی مثل fentanyl، MS Contin و OxyContin
داروهای گلوکوکورتیکوئید مثل prednisone
استروئیدهای آنابولیک برای عضله‌سازی و تقویت عملکرد ورزشی

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

۶. مکمل‌ها را فراموش کنید.

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

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

استخدام یک شرکت نرم افزاری

http://www.unp.ir/استخدام کارشناس و برنامه نویس در شرکت معتبر نفتیdownloads/1/1348134699.jpg