原理概述:
手机电池电量的获取在应用程序的开发中也很常用,Android系统中手机电池电量发生变化的消息是通过Intent广播来实现的,常用的Intent的Action有 Intent.ACTION_BATTERY_CHANGED(电池电量发生改变时)、Intent.ACTION_BATTERY_LOW(电池电量达到下限时)、和Intent.ACTION_BATTERY_OKAY(电池电量从低恢复到高时)。
当需要在程序中获取电池电量的信息时,需要为应用程序注册BroadcastReceiver组件,当特定的Action事件发生时,系统将会发出相应的广播,应用程序就可以通过BroadcastReceiver来接受广播,并进行相应的处理。
main.xml布局文件
java代码:
pcwiki 發表在 痞客邦 留言(0) 人氣(55)
come from:http://duguyidao.iteye.com/blog/1074012
在上次關於使用GridView顯示Sdcard中的圖片Thumbnail圖片,然後點擊再顯示原始圖片。在上次的代碼中我是通過直接對原始圖片進行了Scale製作為100*80的圖片,然後顯示出來,這樣操作的話,當處理大圖片的時候會浪費大量的VM記憶體,所以在上次提出了使用DCIM中thumbnail的縮略圖檔的方法,這裡圖片的尺寸一般都在10-50k的大小。
接著上次關於顯示Thumbnails的問題,這裡針對如何獲取Android thumbnails的圖片以及如何和原始圖片關聯,說先看一下手機內部SDcard中的Thumbnail檔(參照附件1),使用Linux下的 ls -a 命令顯示隱藏檔。
pcwiki 發表在 痞客邦 留言(0) 人氣(811)
package demo.camera;
import android.app.Activity;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.provider.MediaStore.Images.Media;
import android.util.Log;
import android.view.View;
import android.widget.ImageButton;
import android.widget.TextView;
/**
* 该类完成图片的检索,显示功能
* @author Administrator
*
*/
public class PhotoManager extends Activity {
pcwiki 發表在 痞客邦 留言(0) 人氣(31)
http://www.eoeandroid.com/thread-199471-1-1.html
pcwiki 發表在 痞客邦 留言(0) 人氣(52)
从Android 2.2开始系统新增了一个缩略图ThumbnailUtils类,位于framework的android.media.ThumbnailUtils位置,可以帮助我们从mediaprovider中获取系统中的视频或图片文件的缩略图,该类提供了三种静态方法可以直接调用获取。
1.
static Bitmap createVideoThumbnail(String filePath, int kind) //获取视频文件的缩略图,第一个参数为视频文件的位置,比如/sdcard/android123.3gp,而第二个参数可以为MINI_KIND或 MICRO_KIND最终和分辨率有关
2.
static Bitmap extractThumbnail(Bitmap source, int width, int height, int options) //直接对Bitmap进行缩略操作,最后一个参数定义为OPTIONS_RECYCLE_INPUT ,来回收资源
3.
static Bitmap extractThumbnail(Bitmap source, int width, int height) // 这个和上面的方法一样,无options选项
获取手机里视频缩略图:
[java]
public static Bitmap getVideoThumbnail(ContentResolver cr, Uri uri) {
Bitmap bitmap = null;
BitmapFactory.Options options = new BitmapFactory.Options();
options.inDither = false;
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Cursor cursor = cr.query(uri,new String[] { MediaStore.Video.Media._ID }, null, null, null);
pcwiki 發表在 痞客邦 留言(0) 人氣(162)
获取图片缩略图:
byte[] imageByte=getImageFromURL(urlPath.trim());
pcwiki 發表在 痞客邦 留言(0) 人氣(491)
Images.Media.EXTERNAL_CONTENT_URI这是一个系统图片数据表,图库里面的图片数据都是从这里面查询出来的;调用insert就是往这个表里面插入一条数据,插入成功的话,下次加载图库,就可以把新加入的数据从这个表中查询并展示出来了,
Images.Media.EXTERNAL_CONTENT_URI:数据表肯定就包括一些属性字段,如下:
values.put(Images.Media.TITLE, title);
values.put(Images.Media.DISPLAY_NAME, filename);
values.put(Images.Media.DATE_TAKEN, dateTaken);
values.put(Images.Media.MIME_TYPE, IMAGE_MIME_TYPE);
values.put(Images.Media.ORIENTATION, degree[0]);
values.put(Images.Media.DATA, filePath);
values.put(Images.Media.SIZE, size);
上面这些内容的键值就是数据表里面的字段,当然这并不是所有的,只是传一些比较重要和常用的保存起来;比如图片的名称、时间、大小、类型等
pcwiki 發表在 痞客邦 留言(0) 人氣(319)
http://www.eoeandroid.com/thread-171069-1-1.html
pcwiki 發表在 痞客邦 留言(0) 人氣(26)
private String getRealPathFromURI(Uri contentUri) {
Cursor cursor = null;
String result = contentUri.toString();
String[] proj = {MediaStore.Images.Media.DATA};
cursor = managedQuery(contentUri, proj, null, null, null);
if(cursor == null) throw new NullPointerException("reader file field");
if (cursor != null) {
int column_index = cursor
.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
// 最后根据索引值获取图片路径
result = cursor.getString(column_index);
try
{
//4.0以上的版本会自动关闭 (4.0--14;; 4.0.3--15)
if(Integer.parseInt(Build.VERSION.SDK) < 14)
{
cursor.close();
}
}catch(Exception e)
{
Log.e(TAG, "error:" + e);
}
}
return result;
}
pcwiki 發表在 痞客邦 留言(0) 人氣(46)
如何在程式中呼叫相本來選取相片
這次要介紹一下如何從程式中呼叫相本來選取相片,並回傳到程式中中來使用。
呼叫相本選取照片,記得還是需要自行定義回傳碼 SELECT_IMAGE_ACTIVITY_REQUEST_CODE
pcwiki 發表在 痞客邦 留言(0) 人氣(681)