常用代码
来源:互联网 发布:防御阵型中文版mac 编辑:程序博客网 时间:2024/06/06 08:50
发短信
//1,拿到短信管理器SmsManager sm = SmsManager.getDefault();//2.切割短信ArrayList<String> smss = sm.divideMessage(content);//3,循环发送短信内容for (String string : smss) { sm.sendTextMessage(phone, null, string, null, null);}
打电话
//创建意图对象Intent intent = new Intent();//把动作封装到意图对象中intent.setAction(Intent.ACTION_CALL);//设置打给谁intent.setData(Uri.parse("tel:"+phone));//把动作告诉系统startActivity(intent);
SharedPreference
- 存储
//使用SharedPreferenceSharedPreferences sp = getSharedPreferences("info", MODE_PRIVATE);//拿到sp的编辑器Editor ed = sp.edit();ed.putString("name", name);ed.putString("pass", pass);//提交ed.commit();
- 取出
SharedPreferences sp = getSharedPreferences("info", MODE_PRIVATE);String name = sp.getString("name", "");String pass = sp.getString("pass", "");
获取sd卡存储空间
File path = Environment.getExternalStorageDirectory();StatFs stat = new StatFs(path.getPath());long blockSize;long totalBlocks;long availableBlocks;//获取当前系统版本的等级if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.JELLY_BEAN_MR2){ //4.3以上 blockSize = stat.getBlockSizeLong(); totalBlocks = stat.getBlockCountLong(); availableBlocks = stat.getAvailableBlocksLong();}else{ blockSize = stat.getBlockSize(); totalBlocks = stat.getBlockCount(); availableBlocks = stat.getAvailableBlocks();}TextView tv = (TextView) findViewById(R.id.tv);tv.setText(formatSize(totalBlocks*blockSize));
读写存储卡
//外部存储路径if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){//是否挂载 File file = new File(Environment.getExternalStorageDirectory(),"info.txt"); if(file.exists()){//内部存储路径File file = new File(getFilesDir(),"info.txt");//获取输出流,带权限FileOutputStream out = openFileOutput("info.txt", MODE_PRIVATE);
对话框
//确定取消对话框public void click(View v){ AlertDialog.Builder builder = new Builder(this); builder.setIcon(android.R.drawable.alert_dark_frame); builder.setTitle("欲练此功,必先自宫"); builder.setMessage("你确定要练?"); //确定按钮 builder.setPositiveButton("确定", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(MainActivity.this, "狠人啊",0).show(); } }); //取消按钮 builder.setNegativeButton("取消", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(MainActivity.this, "迷途知返",0).show(); } }); //生成对话框对象 AlertDialog ad = builder.create(); ad.show();}
单选框
//单选框public void click2(View v){ AlertDialog.Builder builder = new Builder(this); builder.setTitle("请选择性别"); final String [] items = new String[]{ "男", "女" }; builder.setSingleChoiceItems(items, -1, new OnClickListener() { //dialog触发这个方法的对话框 @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(MainActivity.this, "您选择的是:"+items[which], 0).show(); //关闭对话框 dialog.dismiss(); } }); builder.show();}
多选框
//多选框public void click3(View v){ AlertDialog.Builder builder = new Builder(this); builder.setTitle("请选择偶像"); final String [] items = new String[]{ "达芬奇", "令狐冲", "东方不败" }; final boolean [] checkedItems = new boolean[]{ true, false, false }; builder.setMultiChoiceItems(items, checkedItems, new OnMultiChoiceClickListener() { @Override public void onClick(DialogInterface dialog, int which, boolean isChecked) { checkedItems[which] = isChecked; } }); //设置确定按钮 builder.setPositiveButton("确定",new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); String text = ""; for(int i=0;i<items.length;i++){ text+=checkedItems[i]?items[i]+",":""; } Toast.makeText(MainActivity.this, text, 0).show(); } }); builder.show();}
获取联系人信息
public class ContactInfoUtils { /** * 获取系统里面全部的联系人信息 * 获取联系人就要操作联系人数据库,而这个数据库是私有的,就需要内容提供者. 为了能获取到内容提供者的解析器,需要传递进来一个参数:上下文 * @param context * 上下文 * @return */ public static List<ContactInfo> getAllContacts(Context context) {//获取系统中所有联系人信息的方法,返回值为List List<ContactInfo> contanctInfos = new ArrayList<ContactInfo>(); // 1. 查询raw_contacts 把 联系人的 id获取出来 ContentResolver resolver = context.getContentResolver();//拿到一个内容提供者的解析器 // 获取raw_contacts表的uri Uri uri = Uri.parse("content://com.android.contacts/raw_contacts");//最重要的第一个参数是Uri,所有的内容提供者前缀都是content:// // 获取data表的uri Uri datauri = Uri.parse("content://com.android.contacts/data"); Cursor cursor = resolver.query(uri, null, null, null, null);//查询的操作,返回值为cursor的结果集 //关心的是contact_id while (cursor.moveToNext()) { String id = cursor.getString(cursor.getColumnIndex("contact_id")); System.out.println("联系人的id:" + id); if (id != null) { ContactInfo contactInfo = new ContactInfo(); // 2.根据id查询data表 获取联系人的数据。 Cursor datacursor = resolver.query(datauri, null, "raw_contact_id=?", new String[] { id }, null);//第1个参数是Uri while (datacursor.moveToNext()) { String data1 = datacursor.getString(datacursor .getColumnIndex("data1")); String mimetype = datacursor.getString(datacursor .getColumnIndex("mimetype")); if ("vnd.android.cursor.item/phone_v2".equals(mimetype)) { contactInfo.setPhone(data1); } else if ("vnd.android.cursor.item/email_v2" .equals(mimetype)) { contactInfo.setEmail(data1); } else if ("vnd.android.cursor.item/name".equals(mimetype)) { contactInfo.setName(data1); } } datacursor.close(); contanctInfos.add(contactInfo); } } cursor.close(); return contanctInfos; }}
BitMap、Drawable、inputStream及byte[] 互转
//BitMap to inputStream ByteArrayOutputStream baos = new ByteArrayOutputStream(); bm.compress(Bitmap.CompressFormat.PNG, 100, baos); InputStream isBm = new ByteArrayInputStream(baos .toByteArray()); //BitMap to byte[] Bitmap defaultIcon = BitmapFactory.decodeStream(in); ByteArrayOutputStream stream = new ByteArrayOutputStream(); defaultIcon.compress(Bitmap.CompressFormat.JPEG, 100, stream); byte[] bitmapdata = stream.toByteArray(); //Drawable to byte[] Drawable d; // the drawable (Captain Obvious, to the rescue!!!) Bitmap bitmap = ((BitmapDrawable)d).getBitmap(); ByteArrayOutputStream stream = new ByteArrayOutputStream(); defaultIcon.compress(Bitmap.CompressFormat.JPEG, 100, bitmap); byte[] bitmapdata = stream.toByteArray(); //byte[] to Bitmap Bitmap bitmap =BitmapFactory.decodeByteArray(byte[], 0,byte[].length);
uri相关
- 资源路径 android.resource://com.packagename/raw/xxxx
- 根据uri获取路径
Uri uri = data.getData();String[] proj = { MediaStore.Images.Media.DATA };Cursor actualimagecursor = managedQuery(uri,proj,null,null,null);int actual_image_column_index = actualimagecursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);actualimagecursor.moveToFirst();String img_path = actualimagecursor.getString(actual_image_column_index);File file = new File(img_path);
- android 根据uri获取真实路径
public static String getRealFilePath( final Context context, final Uri uri ) { if ( null == uri ) return null; final String scheme = uri.getScheme(); String data = null; if ( scheme == null ) data = uri.getPath(); else if ( ContentResolver.SCHEME_FILE.equals( scheme ) ) { data = uri.getPath(); } else if ( ContentResolver.SCHEME_CONTENT.equals( scheme ) ) { Cursor cursor = context.getContentResolver().query( uri, new String[] { ImageColumns.DATA }, null, null, null ); if ( null != cursor ) { if ( cursor.moveToFirst() ) { int index = cursor.getColumnIndex( ImageColumns.DATA ); if ( index > -1 ) { data = cursor.getString( index ); } } cursor.close(); } } return data; }
图片文件的路径地址
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0821/1660.html
0 0
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 常用代码
- 动画
- 寻找单身狗
- jQuery中利用keyup事件和判断是否为汉字来实现动态搜索
- iOS资源分享
- 使用Properties的load方法加载属性信息
- 常用代码
- 关于android4.4及以上版本无法恢复还原短信的问题记录与解决
- Groovy脚本基础全攻略
- 黑马程序员--NSNumber的使用
- 安装 postgresql 报错 "An error occured executing the Microsoft VC++ runtime installer"解决办法
- C#.Net前台线程与后台线程的区别 线程Jion的解释
- 第六周项目五 数据结构实践——后缀表达式(栈)
- ASP.NET MVC分页【无搜索条件的分页设计】
- 3、深入浅出JMS(三)--ActiveMQ简单的HelloWorld实例