Android常用功能代码块

1、设置activity无标题,全屏

// 设置为无标题栏 

requestWindowFeature(Window.FEATURE_NO_TITLE); 

// 设置为全屏模式 

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 

2、获得屏幕高度和宽度

//获取屏幕的高度和宽度用到WindowManager这个类

WindowManager wm = (WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE);

 

int width = wm.getDefaultDisplay().getWidth();

int height = wm.getDefaultDisplay().getHeight();

3、获取手机各种信息

复制代码
TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);



String imei = tm.getDeviceId();//移动设备国际辨识码

String imsi = tm.getSubscriberId();//国际移动用户识别码

String tel = tm.getLine1Number();//电话号码

        

String model =  android.os.Build.MODEL;//手机型号

String sdk = android.os.Build.VERSION.SDK;//SDK版本    

String release = android.os.Build.VERSION.RELEASE;//系统版本



//根据IMSI号码识别移动供应商

public String getProvidersName(String IMSI) {

    String ProvidersName = null;

    // IMSI号前面3位460是国家,紧接着后面2位00 02是中国移动,01是中国联通,03是中国电信。

    if (IMSI.startsWith("46000") || IMSI.startsWith("46002")) {

        ProvidersName = "中国移动";

    } else if (IMSI.startsWith("46001")) {

        ProvidersName = "中国联通";

    } else if (IMSI.startsWith("46003")) {

        ProvidersName = "中国电信";

    }

    return ProvidersName;

}
复制代码

4、使用Toast输出一个字符串

public void showToast(String text){

    Toast.makeText(this, text, Toast.LENGTH_SHORT).show();

}

5、把一个字符串写进文件

复制代码
//把一个字符串写进文件

public void writeFile(String str,String path){

    File file;

    FileOutputStream out;

    try{

        //创建文件

        file = new File(path);

        file.createNewFile();

        //打开文件file的输出流

        out = new FileOutputStream(file);

        //将字符串转换成byte数组写入文件

        out.write(str.getBytes());

        out.close();

    }catch(IOException e){

        

    }

}
复制代码

6、把文件内容读出到字符串

复制代码
//把文件内容读出到字符串

public String getFileInfo(String path){

    File file;

    String str = "";

    FileInputStream in;

    try{

        //打开文件的inputStream

        file  new File(path);

        in = new FileInputStream(file);

        //将文件内容读入byte数组

        int length = (int)file.length();

        byte [] temp = new byte[length];

        in.read(temp,0,length);

        str = EncodingUtils.getString(temp, "utf-8");

        in.close();

    }catch(IOException e){

        

    }

    return str;

}
复制代码

7、程序的安装,卸载,更新

复制代码
//调出系统安装应用

String fileName = Environment.getExternalStorageDirectory() + apkName;

Uri uri = Uri.fromFile(new File(fileName));

Intent intent = new Intent(Intent.ACTION_VIEW);

intent.setDataAndType(uri, "application/vnd.android.package-archive");

this.startActivity(intent);



//调出系统卸载应用

Uri packageURI = Uri.parse("package: your.app.id");

Intent intent = new Intent(Intent.ACTION_DELETE,packageURI);

startActivity(intent);
复制代码

8、实现点击两次返回键退出

复制代码
//第一步,定义一个变量,用于标识是否退出



boolean isExit;



//第二步,重写Activity中onKeyDown方法



@Override

public boolean onKeyDown(int keyCode, KeyEvent event) {

    if (keyCode == KeyEvent.KEYCODE_BACK) {

        exit();

        return false;

    } else {

        return super.onKeyDown(keyCode, event);

    }

}



//第三步,写一个退出方法

public void exit(){

    if (!isExit) {

        isExit = true;

        Toast.makeText(getApplicationContext(), "再按一次退出程序", Toast.LENGTH_SHORT).show();

        mHandler.sendEmptyMessageDelayed(0, 2000);

    } else {

        Intent intent = new Intent(Intent.ACTION_MAIN);

        intent.addCategory(Intent.CATEGORY_HOME);

        startActivity(intent);

        System.exit(0);

    }

}



//第四步,根据exit()方法中的的消息,写一个Handler

Handler mHandler = new Handler() {



    @Override

    public void handleMessage(Message msg) {

        // TODO Auto-generated method stub

        super.handleMessage(msg);

        isExit = false;

    }

 

};
复制代码

你可能感兴趣的:(android)