کلیدستان

نسخه‌ی کامل: آموزش background زنده در اندروید- آموزش ساخت wallpaper والپیپر زنده در اندروید
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
آموزش ساخت wallpaper والپیپر زنده در اندروید

فهرست محتوا
1. توضیحی مختصر
·         تصویر پس زمینه ی زنده (Live wallpaper) چیست ؟
·         چگونگی ایجاد پوستر پویا
·         استفاده از intent ها جهت انتخاب تصویر پس زمینه
2. مثالی از ایجاد و انتخاب پوستر ((wallpaper
1. توضیحی مختصر
تصویر پس زمینه ی زنده (Live wallpaper) چیست ؟
Live wallpaper در واقع تصاویر پس زمینه ی متحرک, پویا و تعاملی هستند که در صفحه ی اصلی / home screen سیستم عامل اندروید مورد استفاده قرار می گیرند. Live wallpaper مشابه بسیاری دیگر از برنامه های اندروید بوده و از همان قابلیت ها بهره می گیرد.
چگونگی ایجاد پوستر پویا
به منظور ایجاد یک تصویر پس زمینه ی زنده (live wallpaper), ابتدا لازم است یک فایل XML که تعریف کننده ی خصوصیات wallpaper است ایجاد کنید . این فایل دربردارنده ی توصیفی از برنامه ی کاربردی مورد نظر بوده و همچنین شامل یک پیش نمایش و لینک به preference activity می باشد که امکان تنظیم و سفارشی سازی پوستر پویا را برای شما فراهم می کند .
لازم است یک service ایجاد کنید که کلاس WallpaperService را بسط دهد (به ارث ببرد) . کلاس مذکور در حقیقت کلاس پایه برای همه ی پوسترهای سیستم محسوب می شود . برنامه نویس باید متد onCreateEngine()  را پیاده سازی کرده و شئی از نوع android.service.wallpaper.WallpaperService.Engine بازگرداند . این شئ کلیه ی رخدادهای چرخه ی حیات (life-cycle event), متحرک سازی (animation) و ترسیمات (drawings) مربوط به پوستر را اداره می کند . کلاس Engine مجموعه ای از متدهای چرخه ی حیات از جمله onCreate(), onSurfaceCreated(), onVisibilityChanged(), onOffsetsChanged(), onTouchEvent() و onCommand() را تعریف می کند .
Service به مجوز android.permission.BIND_WALLPAPER نیاز داشته و باید به وسیله یintent-filter برای عملیات android.service.wallpaper.WallpaperService ثبت شود.
همچنین لازم است در فایل AndroidManifest.xml درج کنید که برنامه ی کاربردی شما از ویژه گی android.software.live_wallpaper بهره می گیرد . با انجام این کار, برنامه از نصب شدن روی دستگاه هایی که از قابلیت پوستر زنده پشتیبانی نمی کنند, امتناع می ورزد . 
استفاده از intent ها جهت انتخاب تصویر پس زمینه
می توانید از intent به منظور انتخاب wallpaper استفاده کنید .
// Button to set the Wallpaper
public void onClick(View view) {
        Intent intent = new Intent(WallpaperManager.ACTION_CHANGE_LIVE_WALLPAPER);
        intent.putExtra(WallpaperManager.EXTRA_LIVE_WALLPAPER_COMPONENT,
        new ComponentName(this, MyWallpaperService.class
));
        startActivity(intent);
        }



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