android
文章平均质量分 52
李峰峰
爱编程,爱生活
展开
-
把文件放在SD卡
在程序中访问SDCard,你需要申请访问SDCard的权限。在AndroidManifest.xml中加入访问SDCard的权限如下:文件保存在内存和保存在SD卡的代码差不多 if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){ //判断SD卡是否原创 2015-05-08 11:48:10 · 490 阅读 · 0 评论 -
TabHost页和子Activity之间的通讯
TabHost的各个Tab页,都是由activity组成。现在,某个子Activity中处理数据后,要自动跳转到另外一个Tab页中。这样,需要有个TabHost页和子Activity之间的通讯的机制。 子Activity通知TabHost:1、通过广播方式1)在TabHost中定义广播定义变量protected MessageBroadcastReceiver myRe原创 2015-06-19 12:43:58 · 588 阅读 · 0 评论 -
Android上webview界面切换动画效果
使用Android上的webview控件时需要跳转到下一个html时,要求当前界面缓缓的向左移动,下一个html界面缓缓的从右边出现。这与常规动画不同,一般方式将无法制作出动画。主要实现方法可以先保存上一个网页的快照,与将要跳转的页面结合起来,制作相关动画。下面是主要代码:@Override public void onProgressChanged(WebView vie原创 2015-06-22 11:04:58 · 5547 阅读 · 1 评论 -
android BitMap回收
bitmap在android中使用较多,但是如果不对其进行回收,将会导致内存问题。【第一种方法】及时回收bitmap内存:一般而言,回收bitmap内存可以用到以下代码if(bitmap != null && !bitmap.isRecycled()){ bitmap.recycle(); bitmap = null;原创 2015-06-22 11:38:20 · 7805 阅读 · 0 评论 -
android手势滑动——左右滑动效果实现
/** * 手势监听 * * @author lifengfeng * */public class MainActivity extends Activity implements OnTouchListener, OnGestureListener { // 创建一个用于识别收拾的GestureDetector对象 @SuppressWarnings("deprecat原创 2015-06-22 15:30:39 · 661 阅读 · 0 评论 -
Android应用程序架构
src/ java原代码存放目录gen/自动生成目录gen 目录中存放所有由Android开发工具自动生成的文件。目录中最重要的就是R.java文件。这个文件由Android开发工具自动产生的。Android开发工具会自动根据你放入res目录的资源,同步更新修改R.java文件。正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R.java。R.java在应用中起到了字原创 2015-06-24 14:17:21 · 375 阅读 · 0 评论 -
android获得手机联系人信息代码
public class SelectContactActivity extends Activity { private ListView lv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.la原创 2015-06-24 14:25:26 · 607 阅读 · 0 评论 -
DecimalFormat用法
DecimalFormat是 NumberFormat的一个具体子类,用于格式化十进制数字。DecimalFormat包含一个模式和一组符号 符号含义: 0 一个数字 # 一个数字,不包括 0 . 小数的分隔符的占位符 , 分组分隔符的占位符 ; 分隔格式。 - 缺省负数前缀。 % 乘以 100和作为百分比显示 ?原创 2015-06-24 14:15:18 · 303 阅读 · 0 评论 -
android MD5加密
public class Demo { /** * @param args * @throws NoSuchAlgorithmException */ public static void main(String[] args) throws NoSuchAlgorithmException { MessageDigest digest = MessageDigest.ge原创 2015-06-24 14:21:54 · 339 阅读 · 0 评论 -
android隐藏以及显示软键盘以及不自动弹出键盘的方法
1、//隐藏软键盘 ((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS)原创 2015-06-24 14:29:52 · 355 阅读 · 0 评论 -
android如何对应用进行单元测试
在实际开发中,开发android软件的过程需要不断地进行测试。而使用Junit测试框架,侧是正规Android开发的必用技术,在Junit中可以得到组件,可以模拟发送事件和检测程序处理的正确性。第一步:首先在AndroidManifest.xml中加入下面红色代码:xmlns:android="http://schemas.android.com/apk/res/android"原创 2015-06-24 14:19:29 · 333 阅读 · 0 评论 -
android GPS定位代码
public class MainActivity extends Activity { private LocationManager lm; private MyLocationListener listener; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(s原创 2015-06-24 14:23:48 · 824 阅读 · 0 评论 -
android让界面不被弹出的键盘挤上去
在androidMainfest.xml文件中在此Activity中写入 android:windowSoftInputMode="adjustPan" 可以让界面不被弹出的键盘挤上去。原创 2015-06-24 14:32:09 · 1651 阅读 · 0 评论 -
android获取mac地址
1、 2、private String getLocalMacAddress() { WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); WifiInfo info = wifi.getConnectionInfo(); return info.getMac原创 2015-06-24 14:27:10 · 468 阅读 · 0 评论 -
android获取SD卡状态
/** 获取存储卡路径 */ File sdcardDir=Environment.getExternalStorageDirectory(); /** StatFs 看文件系统空间使用情况 */ StatFs statFs=new StatFs(sdcardDir.getPath()); /** Block 的 size*/ Long blockSize=statFs.get原创 2015-06-24 14:28:29 · 330 阅读 · 0 评论 -
Android中获得上下文的静态方法
//在Android的清单文件做如下申明: //然后写这个类:public class MyApplication extends Application{ private static Context context; public void onCreate(){ super.onCreate(); MyApplicat原创 2015-06-19 12:41:01 · 2460 阅读 · 0 评论 -
android隐藏以及显示软键盘以及不自动弹出键盘的方法
1、//隐藏软键盘 ((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);原创 2015-06-19 12:39:47 · 293 阅读 · 0 评论 -
android开机启动代码
public class StartupReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { Intent startupintent = new Intent(context,StrongTracks.class原创 2015-06-19 12:37:54 · 345 阅读 · 0 评论 -
Android下创建一个sqlite数据库
在Android平台上,集成了一个嵌入式关系型数据库—SQLite,SQLite3支持 NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型只有五种,但实际上sqlite3也接受varchar(n)、char(n)、decimal(p,s) 等数据类型,只不过在运算或保存时会转成对应的五种数据类型。SQLite最大的特点是你可原创 2015-05-08 11:52:08 · 617 阅读 · 0 评论 -
使用系统api实现数据库的增、删、改、查
首先要在创建数据库的同时获得数据库对象,即打开数据库。然后才能对数据库进行操作,数据库的操作完成后一定要记得关闭数据库。如下图: 注:下面的databaseHelper即上图中的helper“增”(Insert)的完整语句:SQLiteDatabase db = databaseHelper.getWritableDatabase();ContentValues values原创 2015-05-08 20:32:28 · 1133 阅读 · 0 评论 -
数据库的事物
使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果程序执行到endTransaction()之前调用了setTransactionSuccessful() 方法设置事务的标志为成功则提交事务,如果没有调用setTransactionSuccessful() 方法则回滚事务。使原创 2015-05-08 20:35:44 · 388 阅读 · 0 评论 -
android保存文件到手机内存
首先要指定文件保存的位置,在Java中,我们可以直接使用Filefile=new File(“info.txt”),但是在Android中,使用这个路径文件会被保存到data/app文件夹(应用程序根目录)下,Android是不允许在这里保存文件的。Android保存文件都是保存在“data/data/包名”文件夹下的。故应该:Filefile=new File(“data/data/co原创 2015-05-06 22:43:08 · 4009 阅读 · 1 评论 -
EditText数据回显
首先我们假设我们把用户名和密码都保存在data/data/com.xxx.xxx/files/info.txt中,格式为:用户名##密码。我们接下来要做的就是把info.txt中保存的用户名和密码分别回显在两个EditText中。下面为自定义的回显用户名和密码的方法:public static Map getSaveUserInfo(Contextcontext)(){Filefile原创 2015-05-07 22:40:47 · 1128 阅读 · 0 评论 -
Socket在手机上的应用
Socket在手机上主要有两个方向:1、 数据传输量大,实时传输要求高聊天交易:避免聊天延时股票交易:避免影响用户交易而导致损失贵金属交易:同上此时可用socket长连接,即连接后不再关闭连接,但是值得注意的是socket在手机端每隔大约1分钟就会被手机自动回收断开连接,所以可以每隔30秒故意与服务器建立一次连接,避免连接被手机回收。2、数据传输量小,实时传输要求不高消原创 2015-05-07 23:57:16 · 1330 阅读 · 0 评论 -
SharedPreferences保存文件及文件读取
在用普通的方法同时保存用户名和密码时,中间必须要有一个分隔符来区分用户名和密码,比如用“##”作为分隔符,此时会导致一个问题,如果用户名或者密码中也包含“##”,则重新读取用户名和密码时就会出错。用SharedPreferences保存文件的方法就可以解决这个问题:Context context=new Context();SharedPreferences sp=context原创 2015-05-08 11:50:07 · 3249 阅读 · 0 评论 -
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原创 2015-06-19 12:36:03 · 2192 阅读 · 1 评论 -
android 还原短信
ContentValues values = new ContentValues(); values.put("address", "123456789"); values.put("body", "haha"); values.put("date", "135123000000"); getContentResolver().insert(Uri.pars原创 2015-06-19 12:36:58 · 341 阅读 · 0 评论 -
android Content Provider
内容提供者即Content Provider,Content Provider提供了一个接口用来共享自己的数据,包括自己的私有数据。其他程序通过Content Resolve来使用这些数据。当应用需要通过ContentProvider对外共享数据时,第一步需要创建一个类继承ContentProvider并重写下面方法:public class PersonContentProvider e原创 2015-06-19 12:29:08 · 601 阅读 · 1 评论 -
android 根据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.getCo原创 2015-06-19 12:34:28 · 366 阅读 · 0 评论 -
android dp和px之间转换
public class DensityUtil { /** * 根据手机的分辨率从 dip 的单位 转成为 px(像素) */ public static int dip2px(Context context, float dpValue) { final float scale = context.getRe原创 2015-06-19 12:32:54 · 313 阅读 · 0 评论 -
BitMap、Drawable、inputStream及byte[] 互转
(1) BitMap to inputStream: ByteArrayOutputStream baos = new ByteArrayOutputStream(); bm.compress(Bitmap.CompressFormat.PNG, 100, baos); InputStream isBm = new ByteArrayInputStream(baos原创 2015-06-19 12:42:50 · 318 阅读 · 0 评论 -
自定义webview,根据网页大小确定webview大小
public class MyWebView extends WebView { public MyWebView(Context context) { super(context); } public MyWebView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, def原创 2015-06-19 12:48:33 · 818 阅读 · 0 评论 -
Android 通过Get/Post提交请求数据到服务器
package com.lifengfeng.submitdata.utils;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.HttpURLConnection;原创 2015-06-29 16:42:09 · 380 阅读 · 0 评论