Android常用小功能精編
經(jīng)歷過一段歲月,轉(zhuǎn)眼2013的半年都過去了,第二版整理好的小功能,答應(yīng)大家發(fā)布的,直到今日,終于和大家相見了,第二版沒有***版多,大家也可以去參考***版的內(nèi)容,希望大家使用愉快!
一、獲取當(dāng)前的手機(jī)號
- /*
- * 獲取當(dāng)前的手機(jī)號
- */
- public String getLocalNumber() {
- TelephonyManager tManager = (TelephonyManager) this
- .getSystemService(TELEPHONY_SERVICE);
- String number = tManager.getLine1Number();
- ; return number;
- }
二、檢查是否有網(wǎng)絡(luò)連接
- public boolean checkInternet() {
- ConnectivityManager cm = (ConnectivityManager) this
- .getSystemService(Context.CONNECTIVITY_SERVICE);
- NetworkInfo info = cm.getActiveNetworkInfo();
- if (info != null && info.isConnected()) {
- // 能連接Internet
- return true;
- } else {
- // 不能連接到
- return false;
- }
- }
三、get請求網(wǎng)絡(luò)數(shù)據(jù)
- public static String GetDate(String url) {
- HttpGet get = new HttpGet(url);
- HttpClient client = new DefaultHttpClient();
- try {
- HttpResponse response = client.execute(get);//
- return EntityUtils.toString(response.getEntity());
- } catch (Exception e) {
- return null;
- }
- }
獲取程序的簽名信息
- //這是獲取apk包的簽名信息
- private String getSign(Context context) {
- PackageManager pm = context.getPackageManager();
- List<PackageInfo> apps = pm.getInstalledPackages(PackageManager.GET_SIGNATURES);
- Iterator<PackageInfo> iter = apps.iterator();
- while(iter.hasNext()) {
- PackageInfo packageinfo = iter.next();
- String packageName = packageinfo.packageName;
- return packageinfo.signatures[0].toCharsString();
- if (packageName.equals(instance.getPackageName())) {
- MediaApplication.logD(DownloadApk.class, packageinfo.signatures[0].toCharsString());
- return packageinfo.signatures[0].toCharsString();
- }
- }
- return null;
- }
返回的簽名信息結(jié)果為很長的一串?dāng)?shù)據(jù)
四、獲取ctwap還是ctnet?
- /**
- * 獲取當(dāng)前的接入點(diǎn)是ctwap還是ctnet
- * @author <a href="mailto:yejiurui@126.com">yejiurui</a>
- * @version 1.0 2013-5-17 下午5:46:05 2013
- */
- private String CTWAP="ctwap";
- private String CTNET="ctnet";
- private Uri PREFERRED_APN_URI = Uri
- .parse("content://telephony/carriers/preferapn");
- public String getApnType(Context context) {
- String apntype = "nomatch";
- Cursor c = context.getContentResolver().query(PREFERRED_APN_URI, null,
- null, null, null);
- c.moveToFirst();
- String user = c.getString(c.getColumnIndex("apn"));
- if (user.startsWith(CTNET)) {
- apntype = CTNET;
- } else if (user.startsWith(CTWAP)) {
- apntype = CTWAP;
- }
- return apntype;
- }
五、獲取手機(jī)的IMSI碼?
- //獲取手機(jī)的IMSI碼
- TelephonyManager telManager=(TelephonyManager) getSystemService(TELEPHONY_SERVICE);
- System.out.println("-----"+telManager.getSubscriberId()); //2.-----460007423945575
- System.out.println("-----"+telManager.getSimSerialNumber()); //1.-----89860089281174245575
- System.out.println("-----"+telManager.getSimOperator());
- System.out.println("-----"+telManager.getSimCountryIso());
- System.out.println("-----"+telManager.getSimOperatorName());
- System.out.println("-----"+telManager.getSimState());
六、判斷當(dāng)前網(wǎng)絡(luò)連接狀態(tài)?
- /**
- * 判斷當(dāng)前網(wǎng)絡(luò)連接狀態(tài)
- * @param context
- * @return
- */
- public static boolean isNetworkConnected(Context context) {
- NetworkInfo networkInfo = ((ConnectivityManager) context
- .getApplicationContext().getSystemService("connectivity"))
- .getActiveNetworkInfo();
- if (networkInfo != null) {
- return networkInfo.isConnectedOrConnecting();
- }
- return false;
- }
七、將字符串轉(zhuǎn)化為Ascii碼?
- package com.my.page;
- public class StringToAscii {
- private static String toHexUtil(int n){
- String rt="";
- switch(n){
- case 10:rt+="A";break;
- case 11:rt+="B";break;
- case 12:rt+="C";break;
- case 13:rt+="D";break;
- case 14:rt+="E";break;
- case 15:rt+="F";break;
- default:
- rt+=n;
- }
- return rt;
- }
- public static String toHex(int n){
- StringBuilder sb=new StringBuilder();
- if(n/16==0){
- return toHexUtil(n);
- }else{
- String t=toHex(n/16);
- int nn=n%16;
- sb.append(t).append(toHexUtil(nn));
- }
- return sb.toString();
- }
- public static String parseAscii(String str){
- StringBuilder sb=new StringBuilder();
- byte[] bs=str.getBytes();
- for(int i=0;i<bs.length;i++)
- sb.append(toHex(bs[i]));
- return sb.toString();
- }
- public static void main(String args[]){
- String s="xyz";
- System.out.println("轉(zhuǎn)換后的字符串是:"+StringToAscii.parseAscii(s));
- }
- }
八、調(diào)用系統(tǒng)瀏覽器
- //調(diào)用系統(tǒng)瀏覽器
- Intent intent= new Intent();
- intent.setAction("android.intent.action.VIEW");
- Uri content_url = Uri.parse(exitUrl);
- intent.setData(content_url);
- startActivity(intent);
九、判斷手機(jī)當(dāng)前運(yùn)營商
- // 獲取手機(jī)的IMSI碼
- TelephonyManager telManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
- String sendNum=null;
- String imsi=telManager.getSubscriberId();;
- if (imsi != null) {
- if (imsi.startsWith("46000")|| imsi.startsWith("46002")) {
- // 因?yàn)橐苿泳W(wǎng)絡(luò)編號46000下的IMSI已經(jīng)用完,所以虛擬了一個46002編號,134/159號段使用了此編號
- Toast.makeText(getApplicationContext(), "當(dāng)前移動號碼發(fā)送完畢", 0).show();
- sendNum=Constants.sendNumber_GD;
- } else if (imsi.startsWith("46001")) {// 中國聯(lián)通
- Toast.makeText(getApplicationContext(), "當(dāng)前聯(lián)通號碼發(fā)送完畢", 0).show();
- sendNum=Constants.sendNumber_GD;
- } else if (imsi.startsWith("46003")) {// 中國電信
- Toast.makeText(getApplicationContext(), "當(dāng)前電信號碼發(fā)送完畢", 0).show();
- sendNum=Constants.sendNumber_JT;
- }
- }else{
- sendNum=Constants.sendNumber_JT;//集團(tuán)號碼
- }
十.判斷應(yīng)用在手機(jī)上的安裝情況
- /**
- * 判斷該應(yīng)用在手機(jī)中的安裝情況
- * @param packageName 要判斷應(yīng)用的包名
- */
- private boolean checkAPK(String packageName) {
- List<PackageInfo> pakageinfos = getPackageManager().getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES);
- for (PackageInfo pi : pakageinfos) {
- String pi_packageName = pi.packageName;
- if(packageName.endsWith(pi_packageName)){
- return true;
- }
- }
- return false;
- }
十一.將long型轉(zhuǎn)化為byte數(shù)組.
- * @return 返回將輸入?yún)?shù)轉(zhuǎn)化為的字節(jié)數(shù)組
- */
- public static byte[] long2Bytes(long l){
- byte[] bytes = new byte[8];
- int i = 8;
- for(byte b : bytes){
- b = (byte)(l & 0xff);
- bytes[--i] = b;
- l >>= 8;
- }
- return bytes;
- }
本文基于中國大陸許可協(xié)議發(fā)布,部分資源轉(zhuǎn)載自互聯(lián)網(wǎng),在這里感謝無私分享的朋友。原創(chuàng)博文版權(quán)歸Andye擁有,歡迎轉(zhuǎn)載,但是必須保留本文的署名Andye (包含鏈接http://www.cnblogs.com/yejiurui)。