برنامه نویسی اندروید

اموزش برنامه نویسی اندروید تخصصی

برنامه نویسی اندروید

اموزش برنامه نویسی اندروید تخصصی

تعیین یک عکس قرار گرفته در حافظه خارجی (External Storage) به عنوان عکس پس زمینه گوشی (wallpaper)، در برنامه نویسی اندروید

فرض کنید که یک عکس در مسیر زیر از حافظه خارجی (External Storage) قرار دارد و قصد داریم که آن را به عنوان عکس پس زمینه گوشی (wallpaper) قرار دهیم :

 
/myFolder/myImage.jpg

برای این منظور، باید کد زیر در Activity اجرا شود :

 
String photoPath = Environment.getExternalStorageDirectory()+"/myFolder/myImage.jpg";
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap bitmap = BitmapFactory.decodeFile(photoPath, options);
WallpaperManager wpm = WallpaperManager.getInstance(getApplicationContext());
try {
    wpm.setBitmap(bitmap);
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

در کد بالا، ابتدا عکس را از حافظه خارجی (External Storage) خوانده و به Bitmap تبدیل می کنیم. سپس با استفاده از روش setBitmap از کلاس WallpaperManager ، آن را به عنوان عکس پس زمینه گوشی (wallpaper) قرار می دهیم.

برای اجرای صحیح کد بالا، باید اجازه های دسترسی مربوط به تغییر عکس پس زمینه گوشی (wallpaper) و همچنین خواندن و نوشتن در حافظه خارجی (External Storage) را در فایل AndroidManifest.xml از پروژه اندروید ذکر کنیم :

 
<uses-permission android:name="android.permission.SET_WALLPAPER" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

به عنوان مثال، فایل AndroidManifest.xml پروژه اندروید می تواند به شکل کلی زیر باشد :

 
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.kelidestan.example"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />
 
    <uses-permission android:name="android.permission.SET_WALLPAPER" />  
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.kelidestan.example.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>
  • vahid hasani

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی