android 常用小功能(第二版)
经历过一段岁月,转眼2013的半年都过去了,第二版整理好的小功能,答应大家发布的,直到今日,终于和大家相见了,第二版没有第一版多,大家也可以去参考第一版的内容,希望大家使用愉快!
目录:
1.获取当前的手机号
2.检查是否有网络连接
3.get请求网络数据
4.获取ctwap还是ctnet?
5.获取手机的IMSI码?
6.判断当前网络连接状态 ?
7.将字符串转化为ascii码
8.调用系统浏览器 9.判断手机当前运营商
10.判断应用在手机上的安装情况
11.将long型转化为byte数组
一、获取当前的手机号
/** 获取当前的手机号*/public String getLocalNumber() {TelephonyManager tManager = (TelephonyManager) this.getSystemService(TELEPHONY_SERVICE);String number = tManager.getLine1Number(); ; return number;}
二、检查是否有网络连接
public boolean checkInternet() {ConnectivityManager cm = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);NetworkInfo info = cm.getActiveNetworkInfo();if (info != null && info.isConnected()) {// 能连接Internetreturn true;} else {// 不能连接到return false;}}
三、get请求网络数据
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; }
返回的签名信息结果为很长的一串数据
四、获取ctwap还是ctnet?
/*** 获取当前的接入点是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;}
五、获取手机的IMSI码?
//获取手机的IMSI码TelephonyManager telManager=(TelephonyManager) getSystemService(TELEPHONY_SERVICE);System.out.println("-----"+telManager.getSubscriberId()); //2.-----460007423945575System.out.println("-----"+telManager.getSimSerialNumber()); //1.-----89860089281174245575System.out.println("-----"+telManager.getSimOperator());System.out.println("-----"+telManager.getSimCountryIso());System.out.println("-----"+telManager.getSimOperatorName());System.out.println("-----"+telManager.getSimState());
六、判断当前网络连接状态 ?
/** * 判断当前网络连接状态 * @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; }
七、将字符串转化为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("转换后的字符串是:"+StringToAscii.parseAscii(s));} }
八、调用系统浏览器
//调用系统浏览器Intent intent= new Intent(); intent.setAction("android.intent.action.VIEW"); Uri content_url = Uri.parse(exitUrl); intent.setData(content_url); startActivity(intent);
九、判断手机当前运营商
// 获取手机的IMSI码TelephonyManager telManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);String sendNum=null;String imsi=telManager.getSubscriberId();;if (imsi != null) {if (imsi.startsWith("46000")|| imsi.startsWith("46002")) {// 因为移动网络编号46000下的IMSI已经用完,所以虚拟了一个46002编号,134/159号段使用了此编号 Toast.makeText(getApplicationContext(), "当前移动号码发送完毕", 0).show();sendNum=Constants.sendNumber_GD;} else if (imsi.startsWith("46001")) {// 中国联通 Toast.makeText(getApplicationContext(), "当前联通号码发送完毕", 0).show();sendNum=Constants.sendNumber_GD;} else if (imsi.startsWith("46003")) {// 中国电信Toast.makeText(getApplicationContext(), "当前电信号码发送完毕", 0).show();sendNum=Constants.sendNumber_JT;}}else{sendNum=Constants.sendNumber_JT;//集团号码}
十.判断应用在手机上的安装情况
/*** 判断该应用在手机中的安装情况* @param packageName 要判断应用的包名*/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型转化为byte数组
* @return 返回将输入参数转化为的字节数组*/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;}
转载于:https://www.cnblogs.com/yejiurui/p/3200376.html
android 常用小功能(第二版)相关推荐
- 《Android移动应用基础教程》(Android Studio)(第二版)黑马程序员 课后习题答案
<Android移动应用基础教程>(Android Studio)(第二版)黑马程序员 课后习题答案 目录 第1章 Android基础入门 第2章 Android常见界面布局 第3章 An ...
- 《Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后题答案 第7章
<Android移动应用基础教程>(Android Studio)(第二版)黑马教程 课后题答案 第7章 一.判断题 1.对 2.对 3.对 4.错 5.对 二.选择题 1.C 2.B 3 ...
- 《Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后题答案第一章
<Android移动应用基础教程>(Android Studio)(第二版)黑马教程 课后题答案 第一章 一.填空题 1.dex 2.@color 3.AndroidManifest.xm ...
- Android 常用开发功能 博客导航
转载地址:http://blog.csdn.net/ciqing123/article/details/52931663?locationNum=16&fps=1 简介:第一次在CSDN上发表 ...
- five 安卓应用|five 1.0.1 for android,Five小视频安卓版
Five小视频安卓版是一个1分钟视频创作社区,是一款非常不错的小视频应用软件,用户可以将自己身边精彩的瞬间拍成小视频发布到平台上,还能结交更多有趣的朋友,操作简单,带你玩转小视频.欢迎用户使用西西下载 ...
- Android第一行代码第二版简要总结
进入安卓的第一本书(简要概括) 第一章 了解大体Android 1.Android系统架构 Linux内核层:为Android设备的各种硬件提供了底层的驱动. 系统运行库层:通过c/c++库来提供主要 ...
- 从零开始Android游戏编程(第二版) 第一章 搭建开发环境
第一章 搭建开发环境 难度:容易 工欲善其技,必先利其器.我们要做的第一件事就是搭建Android开发环境.本文只介绍Windows下的安装方法,Linux下的安装方法请参考官方网站的介绍. 与PC编 ...
- 从零开始Android游戏编程(第二版) 第二章 创建第一个程序Hello Tank
第二章 创建第一个程序Hello Tank 难度:容易 现在开始,我们要真正写作Android程序了.虽然前面安装过程那么复杂,但是写起程序来却是非常简单.而且为了让大家有一个直观的认识,本文不会叙述 ...
- 不要放过那个装X的阿里,android游戏开发大全第二版PDF
这都不是被导师剥削的问题,这个是自然规律在逼着你. 你和水稻谈休假问题,水稻不会停下来等你. 张启发院士带的博士生,甚至是院士本人,绝大部分时间,就是一年四季跟着水稻转. 有认识张启发院士的学生说,张 ...
最新文章
- SQL Server(五)——常用函数
- 好友国自然基金获批!畅饮之余透露给我这个秘密
- python文件信息排序_python文件排序的方法总结
- (伪)datagridview里面id的自增长
- 数据库编程入门培训(二)
- 火车站购票系统c语言编程,用c语言编写火车购票系统怎么编写,在线等,急!!!...
- [html] 如何给table中的某一列设置固定宽度
- unityscrollview生成大量_superscrollviewforUGUI的一些使用心得
- python文件地址拼接
- 第六:Pytest中的setup/teardown
- Python Tricks(十六)—— list转换为str
- opencv源码下载编译
- python计算等额本金_等额本金还款计算公式
- mixpanel umeng talkingdata
- Pycharm 编辑器文本中间出现有一条分割线
- 2023年全国最新会计专业技术资格精选真题及答案18
- 让ImageView尺寸适应图片比例和屏幕
- PS 滤镜——(扭曲)球面化 Spherize
- 【matplotlib】21.多图合并【python3、numpy、pandas、matplotlib完结】
- web测试与APP测试方法总结
热门文章
- C#温故而知新学习系列之.NET框架高级特性—概述.NET框架中的反射(一)
- 国际域名转出ICANN投诉
- vivado----fpga硬件调试 (二)----mark_debug
- ADC动态范围的计算
- android系统tee接口,Android操作系统上的TEE / HSM支持
- c语言220程序,《C语言程序实例大全》原代码220例
- 2010年10月VB100测试成绩
- ENAS pygraphviz 的替换之路
- python-pptx
- 浅谈Java语言中ArrayList和HashSet的区别