- 博客(62)
- 资源 (2)
- 收藏
- 关注
原创 记一次更换硬盘的经历
用了10年的老硬盘,噪音实在太大了,为了防止突然嗝屁,买了个新硬盘准备替换掉。现状是有个SSD装了win10,机械硬盘装数据。本次更换只替换机械硬盘,理应相当顺利,不动系统。最多就拷拷数据罢了。然后事情发展远没有那么简单。首先,由于历史原因,之前把系统换到SSD的时候,由于一些细节问题,导致引导程序还在机械盘上,操作系统在ssd上。具体表现为:1、没有机械盘,只插SSD,BIOS提示找不到系统,因为bootmgr在机械盘上2、只插机械盘,没插SSD,进win10时蓝屏报错。因为win10
2021-03-28 22:53:53
367
1
原创 Android gradle脚本相关
1、调试gradle脚本可以使用println(“hello world”)来打印变量值参考文档:https://stackoverflow.com/questions/28437636/how-to-debug-a-gradle-build-gradle-file-in-a-debugger-with-breakpoints2、根据Debug、release等信息来设置不同的变量/参数android.applicationVariants.all { variant ...
2020-12-31 17:35:21
220
原创 Android后台服务概述
本篇文章主要讲述android servivce相关知识,其中会穿插一些其他的知识点,作为初学者的教程。老鸟绕路目录为什么要用ServiceService及其继承者IntentServiceservice的生命周期IntentService一个后台计数器的例子来讲述ServiceService如何与UI组件通信BroadcastService与通知栏的通信为...
2019-03-02 21:53:39
822
原创 cannot locate symbol "atof" referenced by 报错分析以及解决方案
在stdlib.h中的库函数atof在ndk android-19中: __NDK_FPABI__static __inline__ double atof(const char *nptr){ return (strtod(nptr, NULL));} 在ndk android-21以及以上版本内:extern double atof(const char*);...
2018-10-25 16:56:15
2374
原创 Linux常用命令
Findfind . -name “sth you’re looking for”Grepgrep -inr “sth you’re looking for” .-i 忽略大小写 -n 显示行号 -r 递归查找
2017-09-11 17:30:22
236
原创 Ubuntu 登陆无限闪退
引子配置环境变量时,logout后,再次登陆,出现无限闪退情况,即输入密码,回车后闪了一下,又回到登陆界面,无奈欲重装虚拟机,觉太麻烦,故Google之。总结思路如下
2017-08-26 11:30:11
8135
原创 坑爹的Volley StringRequest 【String getBytes 理解】
今日从服务器上获取txt文件显示,因为内容是中文,所以出现了乱码,编码问题嘛,随便搞搞。但是怎么的都不行,最后去比较每个字节。发现服务器TXT文件编码为UTF-8。app端也是用UTF-8来解析,没毛病,为啥就显示乱码呢。 也算是重温了下基础,分别将服务器端的返回。分别用getBytes("UTF-8")和getBytes("GBK")。发现返回的字节数组长度还不同。隐约发现了问
2017-07-15 16:58:42
413
原创 Android监听Home键和最近任务
IntentFilter home_filter = new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);registerReceiver(new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) {
2016-10-25 17:23:30
2112
1
原创 android监听前台程序
am.getRunningTasks(1);可以获取当前的所有运行的Task,排第一个的即为前台程序。ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);List runningTasks = am.getRunningTasks(1);Log.e(TAG,"top:"+runningTasks
2016-10-25 17:13:57
684
原创 Fragment使用心得
1、Fragment依附于ViewGroup作为其显示的容器。可以认为它是挂载在ViewGroup下面的。 所以使用getSupportFragmentManager().beginTransaction().replace的时候是替换不掉ViewGroup下面原生的View的(原生指的是在xml中定义的,不能动态切换的View),只能替换掉依附在上面的其他Fragment。所以replace a
2016-05-14 11:39:52
843
原创 Android开发之殇
在国内使用android studio,心真的好累,特别是需要添加依赖的时候。由于墙的问题,有时需要挂VPN。然而,坑了个爹。有时开着VPN,Sync一下Gradle时,莫名其妙的出现“远程主机强迫关闭了一个现有的连接”没有任何其他提示,只知道是依赖出了问题,后来不管是改build tool version,还是改SDK version,都没用。我还去设了代理,反正都是那句话,我快崩溃了,决定不搞了
2016-04-24 15:16:42
1930
原创 android layout,measure,draw资料收集
写在前面,本文对网络中一些关注标题的文章进行了下收集总结,旨在知道每个函数的意义,特别是requestLayout和invalidate这两个比较常用函数的区别。首先放一张大神图
2016-03-27 17:07:27
596
原创 android view层次与位置大小
首先要明白,android的层次由摆放view的先后顺序决定,也就是addView中的index,0表示最下面,越大越上面,不会超过容器的包含的View个数,(因为是数组下标)。如下代码展示了如何交换两个ImageView的层次。
2016-03-27 15:59:00
32602
原创 NDK调试心得2
如果调用jni env的接口抛出异常,首先它不会立刻抛出异常,根据本人分析,它会在两种情况下抛出:1、jni返回时,如果env是jni函数返回的最后一句,那么返回时,它会抛出异常。这时java端能收到异常,然后系统提示已停止运行2、再调下一个env时抛出异常,这时java端收不到异常,程序闪退。Log提示:jni method called with pending excepti
2013-08-18 15:29:44
4711
原创 System.currentTimeMillis() uptimeMillis elapsedRealtime 区别
System.currentTimeMillis() 系统时间,也就是日期时间,可以被系统设置修改,然后值就会发生跳变。uptimeMillis 自开机后,经过的时间,不包括深度睡眠的时间elapsedRealtime自开机后,经过的时间,包括深度睡眠的时间所以System.currentTimeMillis()不适合计算时间间隔,eg,now = System.curr
2013-04-26 13:31:38
15367
3
转载 Android智能指针SP WP使用方法介绍
转自:http://developer.51cto.com/art/201001/180894.htmAndroid手机操作系统既然是开源的操作系统。那么在具体的文件夹中就会存放着各种相关功能的开源代码。我们在使用的时候可以根据这些源代码进行相应的修改就能轻松的完成我们所需的功能。在这里大家就一起来看看Android智能指针的相关源码解读以及应用方法。在Android的源代码中
2013-04-11 09:15:00
885
转载 stagefright,OpenMax框架
转自:http://blog.chinaunix.net/space.php?uid=10995602&do=blog&view=me&frmd=-1stagefright框架(一)Video Playback的流程在Android上,預設的多媒體框架(multimedia framework)是OpenCORE。OpenCORE的優點是兼顧了跨平台的移植性,而且已經過
2013-04-10 11:09:16
3903
转载 android用于打开各种文件的intent(转)
import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.net.Uri.Builder;import java.io.File;import android.content.Intent;//自定义android Intent类,//可
2013-03-29 10:31:26
1117
转载 一个TCP包中的数据数据问题
一个TCP包中最大的数据2008-03-10 18:54在以太网中,最大传输单元MTU为1500个字节,在一个IP包中,去除IP包头的20个字节,可以传输的最大数据长度为1480个字节。在TCP包中,去除20个TCP包头,可以传输的最大数据段为1460个字节。因此,当数据超过最大数据长度时,将对该数据进行分片处理,在IP包头中会看到有多个片在传输,但标识号是相同的,表示
2013-02-07 13:55:20
709
转载 TCP,UDP发送数据包大小浅析
MTU最大传输单元,这个最大传输单元实际上和链路层协议有着密切的关系,EthernetII帧的结构DMAC+SMAC+Type+Data+CRC由于以太网传输电气方面的限制,每个以太网帧都有最小的大小64bytes最大不能超过1518bytes,对于小于或者大于这个限制的以太网帧我们都可以视之为错误的数据帧,一般的以太网转发设备会丢弃这些数据帧。由于以太网EthernetII最大的数据帧是15
2013-02-07 13:53:39
951
原创 Wifi Direct的理解
目前android原生framework支持wifi direct,但是上层无应用可用。本来想做个文件传输服务。之后貌似想痛了一些问题,wifi direct协议只是规定到了IP层,建立了一个P2P的IP地址。对于应用层是没有规定,所以就算了我单方面做了个文件传输服务,对方机器也必须安装相同的应用才行。突然明白了协议的重要性
2013-01-23 13:49:46
1467
原创 端口映射(转发)、MAC绑定、DDNS、远程开机基础知识
端口映射:由于路由器将网络分成了内网、外网(起到网关作用)。192.168.x.x为内网地址,外网地址为ISP提供的IP,所以对于外网来说,内部无论多少设备,都只有一个外网IP(也是解决IP地址日趋不够的一种方法)。如果外网要访问内部某个设备,那么就要端口映射。原理是将外网发给路由器的某个端口的数据,转发到端口所对应的内网IP地址。这样就完成了外网访问内网的一个过程。MAC绑定:
2012-12-24 13:50:54
6552
转载 常见mime type
转自:http://www.cnblogs.com/Rooty/archive/2011/07/16/2107962.html一、MIME TYPE描述多用途互联网邮件扩展(MIME,Multipurpose Internet Mail Extensions)是一个互联网标准,它扩展了电子邮件标准,使其能够支持非ASCII字符、二进制格式附件等多种格式的
2012-12-04 16:34:27
1403
原创 NDK调试心得
最近为了性能需求,开始搞JNI,白手起搞真心不容易。中间差点崩溃了好几次,最终总算得到一点心得。 JNI对性能的提升没有我预想中的大,对于for循环的速度提升大概在1倍左右,所以如果数量级不大的话,性能提升不会很明显JNI编完之后,不能调试,是不是很蛋疼,不像android Java可以看出错信息。JNI crash之后,界面上表示为没有任何反应,过段时间直接退出应用,没有提示、也没有
2012-11-25 22:57:06
4947
原创 超简单的NDK单步调试方法
最近为了性能需求,开始搞JNI,白手起搞真心不容易。中间差点崩溃了好几次,最终总算得到一点心得。 JNI对性能的提升没有我预想中的大,对于for循环的速度提升大概在1倍左右,所以如果数量级不大的话,性能提升不会很明显JNI编完之后,不能调试,是不是很蛋疼,不像android Java可以看出错信息。JNI crash之后,界面上表示为没有任何反应,过段时间直接退出应用,没有提示、也没有
2012-11-25 21:38:38
34394
5
转载 如何更改AVD的默认路径
Android中保存AVD的默认路径是"Documents and Settings\user\.android",可以通过以下几种方法修改它。1. 修改系统环境变量。Start Menu > Control Panel > System > Advanced System Settings (on the left) > Environment VariablesAd
2012-11-24 13:26:31
16118
转载 Android 平滑和立体翻页效果2
http://www.ibm.com/developerworks/cn/opensource/os-cn-android-anmt2/Android launcher 的平滑和立体翻页效果我们这里把 Android launcher 程序的 Workspace 相关的代码抽取出来,以一个比较简单的代码来展示 launcher 程序是如何实现多页以及不同页面之间的切换效果。本示例代
2012-11-21 09:33:31
1160
转载 Android 平滑和立体翻页效果1
http://www.ibm.com/developerworks/cn/opensource/os-cn-android-anmt1/index.htmlAndroid 平台提供了一套完整的动画框架,使得开发者可以用它来开发各种动画效果,本文将向读者阐述 Android 的动画框架是如何实现的。任何一个框架都有其优势和局限性,只有明白了其实现原理,开发者才能知道哪些功能可以利用框架来实现
2012-11-21 09:32:11
1408
转载 对波特率的理解
对波特率的理解波特率(BaudRate) 模拟线路信号的速率,也称调制速率,以波形每秒的振荡数来衡量。如果数据不压缩,波特率等于每秒钟传输的数据位数,如果数据进行了压缩,那么每秒钟传输的数据位数通常大于调制速率。波特率是指数据信号对载波的调制速率,它用单位时间内载波调制状态改变的次数来表示,其单位是波特(Baud)。波特率与比特率的关系是比特率=波特率 *单
2012-11-16 13:14:13
4787
转载 Android上C++对象的自动回收机制分析
by http://www.cnblogs.com/tonyhan/archive/2011/12/26/2302585.htmlAndroid上C++对象的自动回收机制分析1. 背景C++没有像Java那样的内建的对象自动回收机制,new创建的对象没有delete,会一直存在于内存中。对象已经不再使用,但是如果忘记delete,会造成内存资
2012-11-12 10:37:40
743
转载 右键Dos
●1、bat文件的安装方法(右键的名字是“打开命令提示符”)右键的“打开命令提示符”可以自己定义,只要把代码中的“打开命令提示符”同意换成你想要的即可;把下面的代码复制在记事本,保存后重命名为bat后缀的,双击即可添加到右键;=========================================@echo off::右键添加"打开命令提示符"re
2012-10-31 15:25:48
742
原创 git下载android framework源码
如果百度能够百到,那我就不写了,百度能够百到一个错误的结果: git clone git://android.git.kernel.org/platform/frameworks/base.git/使用这个连不到服务器。把协议改成http就可以了git clone http://android.git.kernel.org/platform/frameworks/base.gi
2012-10-20 17:12:29
5501
1
转载 ACTION_PICK ACTION_GET_Content
http://www.eoeandroid.com/thread-96244-1-1.htmlhttp://www.eoeandroid.com/thread-96247-1-1.htmlhttp://www.eoeandroid.com/thread-96250-1-1.htmlhttp://www.eoeandroid.com/thread-53854-
2012-10-06 16:02:12
2267
原创 android 如何调用选择文件模块
android是个高内聚、低耦合的系统,系统可以拆分成多个模块,而intent就是一个相当强大的传输介质以下内容引用自网络:android如何实现文件打开方式可供选择功能。 //optional
2012-09-24 21:19:22
5487
转载 如何获取Android IP地址
from http://www.2cto.com/kf/201108/99623.html1.使用WIFI首先设置用户权限其次,代码如下public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setConte
2012-09-23 15:48:09
945
原创 由I9100字体客制化apk架构说起
众所周知,I9100可以在设置--显示设置--字体风格里面改变系统字体。android的系统字体位置在system/fonts文件夹下。而I9100无需root权限、只需安装字体apk包就可以实现更换系统字体,他是如何做到的呢首先,先来看下字体apk包的组成,相当简单:androidmanifest.xmlres/assets/fontsres/assets/xml
2012-09-02 21:38:22
2277
原创 android 镜像image解析(二)
尝试在本地环境上加载system.img userdata.img,然后对其进行修改,省去pack/unpack过程,提高效率。但是失败了,虽然失败了,但是还是学到了很多知识了,进行总结下:Linux 命令:File 相当强大的命令,可以对文件进行识别,从而进一步知道,接下来该干什么对一个android db进行file android.dbandroid.db :SQLite
2012-08-29 17:24:37
10631
1
转载 android 代码中调用shell
1. 新建自己的shell文件,或者中windows上传 例如: d://x.sh #! /system/bin/sh#最简单的一个shell,没什么功能#需要注意的是必须是 #! /system/bin/sh开头(有空格)#和一般linux不同,如果用#!/bin/sh就会找不到(因为没有)ls复制代码在cmd中用adb push d://x.sh /data/ke
2012-08-29 17:21:46
12946
5
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人