目录Android知识点: (3)一:dom解析,以及写入数据到xml文件: (3)二:连接socket并获取返回值 (4)三:创建socket服务器 (4)四:获取本地设备信息;执行串口命令 (5)五:获取设备当前时间 (5)六:对于节省代码 (6)七:访问网络权限 (6)八:显示ProgressDialog (6)九:handle消息机制定义与对信息的处理 (6)十:显示AlertDialog,以及对其进行按键处理 (7)十一:判断网络是否连接 (8)十二:判断是否连接有线网络 (8)十三:判断是否能够ping通互联网:返回0则通,否则不通 (9)十四:显示进度圈,防止用户继续其线程start (9)十五:下载文件 (10)十六:解析json文件(android中使用,解析本地文件夹) (11)十七:解析服务器json文件,根据路径获取输入流并解析 (12)十八:获取所有已经安装的apk的信息 (14)十九:安装apk,分为静默安装与非静默安装,静默卸载 (15)二零:发送与接收广播 (17)二一:java中解析JSON文件 (18)二二:获取文件列表 (19)二三:DownloadManager (21)附件一:android-apkinfo.json (23)附件二:java_apkinfo_json (24)二四:复制assets中资源文件到sdcard或data/files目录下 (25)二五:解析与重写xml文件 (27)二六:设置Viewpager的Adapter适配器 (29)二七:设置listView的Adapter适配器 (30)二八:设置按键监听器 (33)二九:对于data中图片信息的处理与使用 (34)三十:OnpageChangeListener页面切换监听器 (34)三一:Activity之间数据的传递 (35)三二:通过代码添加button (36)三三:文件的输入输出 (37)三四:关于文件路径 (38)三五:对sd卡的读写权限设置 (38)三六:file.getCanonicalPath() (39)三七:命令行运行java文件 (39)三八:activity无头标题 (40)三九:activity全屏 (40)四十:启动aitivity/service参数设置 (40)四一:获取已经安装的apk信息 (40)四二:Viewpager (41)四三:LayoutInflater (42)四四:mkdir与mkdirs (42)四五:创建对象Drawable与Bitmap (43)四六:获取屏幕分辨率 (43)四七:消除EditText输入法弹框 (43)四八:android:ellipsize的使用 (44)四九:Edittext属性设置 (44)五十:设置系统菜单语言 (45)五一:android原生设置系统休眠时间 (45)五二:判定ImageView是否可见 (45)五三:关于fragment的使用 (46)五四:打印全部的cursor信息 (47)五五:拆分String,根据特殊符号 (48)五六:获取与设置环境变量 (48)五七:解析与获取文本信息 (48)五八:实现本地升级功能 (49)五九:获取挂载的存储设备的路径 (49)六十:java反射机制,根据函数名调用函数 (50)六一:简单添加Menu选项 (51)六二:获取当前显示的应用包名 (52)六三:kill某一执行进程 (52)常用C函数含义解析: (54)1、memset (54)2、snprintf (54)Android中遇到的小常识 (55)1,查看进程相关信息 (55)2,查看系统内存属性值 (55)3,修改文件权限以及分组 (55)Android知识点:一:dom解析,以及写入数据到xml文件:获取输入流:File file = new File(String filepath);InputStream instream = new FileInputStream(file);private static void serialize(int data) throws Exception {logs("rewrite xmlFile");// 由android.util.Xml创建一个XmlSerializer实例XmlSerializer serializer = Xml.newSerializer();StringWriter writer = new StringWriter();// 设置输出方向为writerserializer.setOutput(writer);serializer.startDocument("UTF-8", true);serializer.startTag("", "datas");serializer.startTag("", "data");serializer.text("" + data);serializer.endTag("", "data");serializer.endTag("", "datas");serializer.endDocument();File file = new File(FILE_PATH + FILE_NAME);if (file.exists()) {file.delete();file.createNewFile();}FileOutputStream io = new FileOutputStream(file);String xmlString = writer.toString();io.write(xmlString.getBytes("UTF-8"));}//解析输入流,获取输入流中信息private static int parseXmlNative(InputStream is) throws Exception {logs("parseXML in native");String data2 = null; // 获取最终使用期限// 得到Dom解析对象工厂DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();// 通过工厂创建Dom解析对象实例DocumentBuilder db = factory.newDocumentBuilder();// 将xml文件的输入流交给Dom解析对象进行解析,并将Dom树返回Document document = db.parse(is);// 通过Dom树接收到根元素Element rootElement = document.getDocumentElement();NodeList nodeList = rootElement.getElementsByTagName("data");Log.i(TAG, "length = " + nodeList.getLength());data2 = nodeList.item(0).getFirstChild().getNodeValue();return Integer.parseInt(data2);}二:连接socket并获取返回值try {String sRead;//参数为ip与端口号Socket socket = new Socket(SERVER_IP, PORT);BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));sRead = br.readLine();logs(sRead);socket.close();logs("socket is closed");serialize(Integer.parseInt(sRead));logs("serialize in file, data = "+ Integer.parseInt(sRead));br.close();} catch (Exception e) {logs("Exception");}三:创建socket服务器public static void main(String[] args) {try {ServerSocket ss = new ServerSocket(30000);while (true) {Socket s = ss.accept();PrintStream ps = new PrintStream(s.getOutputStream()); ps.println("This is String in SocketMain!");ps.close();s.close();}} catch (IOException e) {e.printStackTrace();}}当socket获取连接请求时,返回值为:This is String in SocketMain!四:获取本地设备信息;执行串口命令获取本地mac地址:private static String getEthMacAddress() {try {Process process = Runtime.getRuntime().exec("busybox ifconfig eth0");BufferedReader br = new BufferedReader(new InputStreamReader( process.getInputStream()));String inline = br.readLine();String[] s = inline.split(" ");String ethMac = s[s.length - 1];br.close();return ethMac;} catch (IOException e) {e.printStackTrace();}return null;}获取设备序列号:String serial = Build.SERIAL;获取设备生产厂商String manufacturer = Build.MANUFACTURER;五:获取设备当前时间SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");Date curData = new Date(System.currentTimeMillis());String string_curtime = format.format(curData);int int_curime = Integer.parseInt(string_curtime);信息格式为yyyyMMdd(HHmmss)获取毫秒信息:System.currentTimeMillis();获取时间为自1970年1月1日0时0分起到当前的毫秒数之差。