Android杂谈---设置模拟器壁纸
Android杂谈---设置模拟器壁纸
天天看着模拟器里面的那个图片感觉很恼火,所以干脆想将其换掉,顺便学一点知识
下面是一个设置模拟器壁纸的例子
1、使用本地图片的方式设置壁纸
SetWallpaper.java
- package com.loulijun.setwallpaper;
- import java.io.IOException;
- import Android.app.Activity;
- import android.content.res.Resources;
- import android.graphics.Bitmap;
- import android.graphics.drawable.BitmapDrawable;
- import android.os.Bundle;
- public class SetWallpaper extends Activity {
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- Resources res =getResources();
- BitmapDrawable bmp = (BitmapDrawable)res.getDrawable(R.drawable.gaoyuanyuan);
- Bitmap b = bmp.getBitmap();
- try {
- setWallpaper(b);
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
另外,在main.xml中加入权限
<uses-permission android:name="android.permission.SET_WALLPAPER" />
运行结果如下:
由于图片较大,所以设置的时候需要找一张适合模拟器大小的图片即可
2、使用网络图片的方式设置壁纸
上面的实例是在本地设置的图片,那么如果要使用网络的图片的话,看下面的代码
如下是几个方法的说明
- conn.setReadTimeout(5 * 1000); // 缓存的最长时间
- conn.setDoInput(true);// 允许输入
比如,setDoOutput(true) :为建立与服务器的一个直接的链接,必须取得自己创建的URL,然后调用openConnection()创建一个URLConnection,但是URLConnection一般不允许我们把数据发给它,所以必须调用
setDoOutput(true)设置其允许输出。
SetWallpaper.java
- package com.loulijun.setwallpaper;
- import java.io.IOException;
- import java.io.InputStream;
- import java.net.HttpURLConnection;
- import java.net.MalformedURLException;
- import java.net.URL;
- import android.app.Activity;
- import android.content.res.Resources;
- import android.graphics.Bitmap;
- import android.graphics.BitmapFactory;
- import android.graphics.drawable.BitmapDrawable;
- import android.os.Bundle;
- public class SetWallpaper extends Activity {
- InputStream is;
- HttpURLConnection conn;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- try {
- URL url = new URL("http://image2.sina.com.cn/ent/m/c/2005-12-29/U1431P28T3D945145F358DT20051229231657.jpg");
- conn = (HttpURLConnection)url.openConnection();
- conn.setDoInput(true);
- conn.setConnectTimeout(1000);
- conn.setRequestMethod("GET");
- conn.connect();
- is = conn.getInputStream();
- } catch (MalformedURLException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- } catch (IOException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
- //BitmapDrawable bmp = (BitmapDrawable)res.getDrawable(R.drawable.gaoyuanyuan);
- Bitmap b = BitmapFactory.decodeStream(is);
- try {
- System.out.println("echo==="+b);
- setWallpaper(b);
- is.close();
- conn.disconnect();
- } catch (Exception e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
|
评论暂时关闭