android 设置wallpaper

1.调用系统的Intent.ACTION_ATTACH_DATA,该Intent会唤起所有的设置壁纸程序以及设置联系人头像程序,用户可以通过ChooseActivity进行选择:

该Intent是一个标准Intent,因此所有设置都会支持

 Intent intent = new Intent(Intent.ACTION_ATTACH_DATA);
                intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
                intent.putExtra("mimeType", "image/*");
                Uri uri = Uri.parse(MediaStore.Images.Media
                        .insertImage(getActivity().getContentResolver(),
                                ((BitmapDrawable) wallpaper).getBitmap(), null, null));
                intent.setData(uri);
                startActivityForResult(intent, SET_WALLPAPER);

2.通过WallpaperManager设置

该方法可以直接将图片置为壁纸,对于所有平台的Android系统都使用,但无法裁剪/调整图片。

try {
    WallpaperManager wpm = (WallpaperManager) getActivity().getSystemService(
                Context.WALLPAPER_SERVICE);

    if (wallpaper != null) {
       wpm.setBitmap(bitmap);
       Log.i("xzy", "wallpaper not null");
    }
} catch (IOException e) {
    Log.e(TAG, "Failed to set wallpaper: " + e);
}

AndroidManifest.xml中需要申明权限:

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

时间: 2024-10-11 22:28:25

android 设置wallpaper的相关文章

android设置动态壁纸 (Wallpaper) 介绍

当进入改壁纸的设置页面 但是还没有设置时 09-21 07:55:05.575: INFO/System.out(1337): service onCreate09-21 07:55:05.614: INFO/System.out(1337): service onCreateEngine09-21 07:55:05.634: INFO/System.out(1337): MyEngine09-21 07:55:05.663: INFO/System.out(1337): onCreate09-

Android设置壁纸的几种方案

Android设置壁纸有许多方法,主要思路有两种: 1:通过WallpaperManager设置 2:通过系统程序设置 下文将分开说明: <1>通过WallpaperManager设置 该方法可以直接将图片置为壁纸,对于所有平台的Android系统都使用,但无法裁剪/调整图片. try { WallpaperManager wpm = (WallpaperManager) getActivity().getSystemService( Context.WALLPAPER_SERVICE); i

转:Android 设置屏幕不待机

本文转载于:http://blog.csdn.net/yudajun/article/details/7748760 Android设置支部待机有两种方法 第一种简单通过设置WindowManager属性实现: 在Activity oncreat()方法中设置 getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 第

android设置背景色为透明

android设置背景色为透明 方法一: 只要在配置文件内activity属性配置内加上 android:theme="@android:style/Theme.Translucent" 就好了. 这样就调用了android的透明样式! 方法二: 先在res/values下建colors.xml文件,写入: <?xmlversion="1.0"encoding="UTF-8"?> <resources> <color

android 设置字体颜色、EditText自动输入转换成大写字母的多种方式

在TextView上面设置某一个字的字体颜色为指定颜色时,可以通过java类SpannableString类和Html语言来实现. (一)SpannableString类方式 private void setText(TextView t){ String text = t.getText().toString().trim(); SpannableString span = new SpannableString(text); span.setSpan(new ForegroundColorS

android 设置系统屏幕亮度

android 设置系统屏幕亮度 权限<uses-permission android:name="android.permission.WRITE_SETTINGS"></uses-permission> /*** 获得当前屏幕亮度的模式 * SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1 为自动调节屏幕亮度* SCREEN_BRIGHTNESS_MODE_MANUAL=0 为手动调节屏幕亮度*/private int getScreen

Android 设置图片倒影效果

首先,贴出效果图: 1.布局文件main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_p

android 设置背景为空(透明)

在给控件设置背景时像ps那样的背景透明 在3.0以下可以使用 imageView.setBackgroundResource(android.R.id.empty); 但是这个方法在3.0以上会出现 ERROR/AndroidRuntime(xxxxx): Caused by: android.content.res.Resources$NotFoundException: File  from drawable resource ID #0x1020004可以用imageview.setBac

android设置Activity背景色为透明的2种方法

android设置背景色为透明 方法一: 只要在配置文件内activity属性配置内加上 android:theme="@android:style/Theme.Translucent" 就好了. 这样就调用了android的透明样式! 方法二: 先在res/values下建colors.xml文件,写入: <?xmlversion="1.0"encoding="UTF-8"?> <resources> <color