自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(117)
  • 收藏
  • 关注

转载 Linux之根据内核Oops 定位代码

内核开发时有时候出现Oops,例如一个野指针会导致内核崩溃,如运行时出现以下log:现在有三种方法可以找出具体出现野指针的地方[plain] view plain copy   5.438972] bells bells:  wm5102-aif1  samsung-i2s.0 mapping ok  [    5.443812] bel

2018-01-12 20:19:20 558

转载 Android之如何判断定位是否开启及定位模式

1、关于Android系统中不同的定位模式Android系统中包括3中定位模式: 使用GPS、WLAN和移动网络使用WLAN和移动网络仅使用GPS截图特点同时使用GPS、WIFI及基站定位,速度快、精度高,室内定位效果好。缺点:耗流量、耗电量只使用WIFI和基站定位,

2017-09-21 19:02:00 8911

转载 Android之根据经纬度查询位置地址名称

这几天在做一个LBS的应用,需要把当前获取的经纬度转化成当前位置名称(文字描述),因为当前的经纬度很容易知道,根据网络或者GPS就可以得到,所以关键是把经纬度转化位置的具体描述,但是又不想使用百度或者sso的地图sdk,搞得很烦锁,杀鸡焉用牛刀嘛,所以应该可以有一种很简单的方法。查找了一些资料,目前有两个方法,一种使用Android提供的类Geocoder,调用getFromLocation(la

2017-09-21 18:58:23 2696 1

转载 Android之使用GPS和NetWork定位

Android中使用GPS和NetWork获取定位信息在Android中定位是属于危险权限,需要在添加Mainfest.xml中添加。uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />uses-permission android:name="android.permission.

2017-09-21 18:51:07 1581

转载 Android之无法隐藏标题栏 继承AppCompatActivity的Activity无法隐藏标题栏解决方案

问题描述:继承了AppCompatActivity的Activity无法通过调用requestWindowFeature(Window.FEATURE_NO_TITLE)来隐藏标题栏。[java] view plain copypublic class MainActivity extends AppCompatActivity {   

2017-09-14 10:05:54 647

转载 Android之启动界面之Splash总结

方法一:很多应用都会有一个启动界面。欢迎画面慢慢隐现,然后慢慢消隐。实现这种效果的方法有两种(暂时只发现两种)1、使用两个Activity,程序启动时候load第一张Activity,然后由tick触发N秒钟后startActivity另外一张Activity。2、使用一个Activity,可以用到View.gone() 这个方法。把Acitivity的某些元素移除。1、两

2017-09-12 17:36:59 1079

转载 Android之提升App启动速度

1, 代码分析以之前写的Github App为例.因为这个App集成了Bugly, Push, Feedback等服务, 所以Application的onCreate有很多第三方平台的初始化工作...public class GithubApplication extends MultiDexApplication { @Override public void on

2017-09-12 17:32:45 308

转载 ERP之软件体系架构-深入理解B/S结构应用程序

随着学习的深入,和编程经验的丰富,对BS应用程序有一些认识。   在一些讨论软件技术的QQ群里,或一些社区、BBS中,经常会有一些初学者会犯一些认知性的错误。比如经常会有一些朋友提这样的一些问题:“我怎么在ASP中调用我写的这个JavaScript函数啊?”或者说“我怎么在JavaScript中调用我DAL层读取数据的方法啊?”   对于这些问题,说实话,我也犯过,

2016-12-19 17:18:09 2545

转载 ERP之软件系统架构- C/S与B/S区别与简介

一、什么是C/S和B/S要想对“C/S”和“B/S”技术发展变化有所了解,首先必须搞清楚三个问题。第一、什么是C/S结构。C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都

2016-12-19 11:00:25 17356 1

转载 Android之版本-自动添加编译时间-自动修改版本号

android应用程序的版本号Version name可以在android manifest下手动修改,在code中调用api获取该版本号。    项目中的目标是:每编译一次程序都会自动修改版本号,而不需要手动修改,由于中间debug的次数较多,我打算以每次Build时的当前时间作为版本号。    操作步骤:    1. Android工程目录的assets文件夹下新建一文件,命名为v

2016-12-07 12:01:11 3172

转载 Android之版本-更优雅的 Android 发布自动版本号方案

以前看到一些自动化版本号打包的文章。如果您的项目是用 Git 管理的,并且恰巧又是使用 Gradle 编译(应该绝大部分都是这样的了吧?),本文试图找到一种更加优雅的自动版本管理方法。1 背景我们都知道,Android 应用的版本管理是依赖 AndroidManifest.xml 中的两个属性:android:versionCode:版本号,是一个大于 0 的整数,相当于 Buil

2016-12-07 11:58:17 1166

转载 Android之版本-APP编译时自动生成版本号

近期有一个工作任务:按照某个规则,给Android应用设置一个在编译时自动生成的versionCode与versionName。这一点倒是不奇怪,很多正式的应用都有自己的一套版本号管理。市面上什么某某应用几点零,就是这样的一个产物。我这个任务的难度除了自动生成,还有一个附加条件:在Android项目中编译(通过Android.mk)和在Android Studio中编译(通过build.g

2016-12-07 11:54:30 2696

转载 VS之版本-获取编译时间-用于自动生成版本号

我们写软件的,总希望程序有变动时可以自动生成版本号,不用手动去改,这样多方便啊。VS编译器就可实现这个功能。如下所示:[cpp] view plain copy /* 获取程序编译时间, 用于自动生成版本号很好  __DATE__ "Mar 25 2013"           "Mar  

2016-12-07 11:32:04 4594

转载 VS之版本-编译时自动生成版本-自动获取svn版本号

原理SVN中的可执行文件SubWCRev.exe,该文件可以查看工作目录的当前svn号并且保存在变量$WCREV$中。因此,可以先写一个批处理,然后在项目的预生成命令中执行该批处理文件。VS编译时自动化生成版本示例:在需要添加版本的工程目录下新建文件夹(以Setup为例), 在svn 客户端的安装目录下找到Subwcrev.exe并复制到Setup文件夹下(Subwcr

2016-12-07 11:28:58 3997

转载 VC之版本号-编译自动增加版本号

[VC插件]编译后的版本自动更新一个偶然的机会,在MSDN看到一种用脚本自动增加版本号的方法:How To Increment Version Information After Each Build in Visual C++http://support.microsoft.com/kb/237870/使用方法介绍如下:下载:Bui

2016-12-07 11:25:36 2711

转载 Android之APP版本号和版本名称的重要性

当我们在刚开始学习Android的时候,可能不会过多的关注这个位于manifest.xml文件中的versionCode和versionName。但是其实一个好的版本控制,对于我们有至关重要的作用。现在打算写一点基础的东西,突然想到这个知识点,所以就记录下来,作为笔记。有不够详尽或者错误的地方欢迎指教。版本控制对于发布新版本和开发中的版本维护有着关键性的作用,版

2016-12-06 16:12:11 1531

转载 无线通信之zigbee芯片和模块的选择

ZigBee作为一种个人网络的短程无线通信协议,已经日益为大家所熟知,它最大的特点就是低功耗、可组网,特别是带有路由的可组网功能,理论上可以使ZigBee覆盖的通讯面积无限扩展。相对蓝牙,红外的点对点通信,和WLAN的星状通信,ZigBee的协议就要复杂得多了。那么我们究竟是该选择ZigBee芯片去自己开发协议呢,还是直接选择已经带有了ZigBee协议的模块直接应用呢?  玩转芯片的代

2016-12-01 17:35:09 21168 2

转载 VC之_T

_T("")是一个宏,定义于tchar.h下。  #define __T(x) L ## x  #define _T(x) __T(x)  他的作用是让你的程序支持Unicode编码  因为Windows使用两种字符集ANSI和UNICODE,  前者就是通常使用的单字节方式,  但这种方式处理象中文这样的双字节字符不方便,  容易出现半个汉字的情况。 

2016-11-24 15:13:57 365

原创 VC之使用MFC作为共享的DLL和作为静态链接库区别

使用MFC作为共享的DLL:打包时MFC的DLL的内容没有被包含在EXE文件中,EXE文件较小,但是运行时要求系统中要有相关的DLL文件。作为静态链接库:打包时MFC的DLL的内容被包含在EXE文件中,文件较大,但是可以在没有相关DLL的机器上运行。修改:工程-〉设置 -〉常规

2016-11-24 14:55:03 1829

转载 Java之 byte[]转String问题

最近的项目中要使用到把byte[]类型转换成String字符串然后通过网络发送,但发现发现出去的字符串和获取的字符串虽然是一样的,但当用String的getBytes()的方法得到的byte[]跟原来的byte[]是不一样的。看如下代码:bytebytes[] = new byte[] { 50, 0, -1, 28, -24 };String string = n

2016-09-27 21:35:45 676

转载 Java之 无符号类型是怎么回事

原文地址:http://www.darksleep.com/player/JavaAndUnsignedTypes.html原文作者:Sean R. Owens以下是正文Java 中的无符号类型是怎么回事儿?在 C 和 C++ 这样的语言中,都提供了不同长度的整数类型:char, short, int, long (实际上,char 并不是真正的整数,但是你可以

2016-09-27 21:32:59 2102

原创 Android之XML 特殊字符 警告 Replace “…” with ellipsis character (…, &&;#8230;)

很多人就像我一样,用三个点来表示省略号,所以出警告提示:使用省略号(…, &&;#8230;) 来代替三个点解决办法:1、打两个点2、打四个点。。。。反正不要打三个点3、真的打省略号。还记得吗,是shift+6,六个点,回删就是3个点4、直接输入下面的十进制编码附上 HTML特殊符号对照表特殊符号命名实

2016-09-24 17:43:13 3681 1

原创 Android之布局layout_weight的详细完整解释 分析和总结

研究了一下,写个比较完整的总结,分四种情况1、 控件中只有一个设置layout_weight属性的控件,那么它将独占剩余空间2、 layout_width或者 layout_height 设置为"0dp"   严格按照layout_weight设置的比例,即我们的正常理解3、 layout_width或者 layo

2016-09-23 18:46:14 588

原创 Android之eclipse 自定义菜单工具栏

Window -> Perspective  -> Customize PerspectiveMenu Visibility 可以设置新建菜单..

2016-09-22 11:46:14 1712

转载 Android之蓝牙 详细使用操作步骤

通常情况下,我们对蓝牙的操作主要有:开启和关闭蓝牙、搜索周边设备、能被周边设备所发现、获取配对设备、蓝牙设备间的数据传输。  1、打开蓝牙(当然首先要确保你的手机是有蓝牙设备的)  蓝牙设备主要分为两部分,一部分为本地设备,另一部分为远程设备。BluetoothAdapter——本地设备,对蓝牙操作首先就需要有一个BluetoothAdapter实例。常用的几个方法

2016-09-20 17:28:02 1703

转载 Android之蓝牙 开发基本流程

此例子基于 android demo对于一般的软件开发人员来说,蓝牙是很少用到的,尤其是Android的蓝牙开发,国内的例子很少     Android对于蓝牙开发从2.0版本的sdk才开始支持,而且模拟器不支持,测试至少需要两部手机,所以制约了很多技术人员的开发;    鉴于很多开发人员现在也有蓝牙开发的需求,也为了大家少走些弯路,先将我积攒的一点点在Android蓝牙开

2016-09-20 11:51:39 434

转载 Android之蓝牙 聊天程序的设计和实现 bluetooth chat

作者在这里介绍的这个实例是Google SDK中提供的一个蓝牙聊天程序,简单但信息量巨大,非常适合初学者学习蓝牙方面的知识。在学习这个实例前请读者仔细阅读并理解Socket的工作原理和实现机制,作者的这篇博客中有详细的介绍:http://blog.csdn.net/dlutbrucezhang/article/details/8577810在Andr

2016-09-20 11:35:24 1858

转载 Android之蓝牙 一个简单实用的Android蓝牙程序实例

作者:   张奇       我将在这篇文章中介绍了的Android蓝牙程序。这个程序就是将实现把手机变做电脑PPT播放的遥控器:用音量加和音量减键来控制PPT页面的切换。遥控器服务器端首先,我们需要编写一个遥控器的服务器端(支持蓝牙的电脑)来接收手机端发出的信号。为了实现这个服务器端,我用到了一个叫做Bluecove(专门用来为蓝牙服务的!)的Java库。以下是我

2016-09-20 11:20:09 2407

转载 网络之 TCP封包、粘包、半包

TCP大致工作原理介绍:工作原理TCP-IP详解卷1第17章中17.2节对TCP服务原理作了一个简明介绍(以下蓝色字体摘自《TCP-IP详解卷1第17章17.2节》):尽管T C P和U D P都使用相同的网络层( I P),T C P却向应用层提供与U D P完全不同的服务。T C P提供一种面向连接的、可靠的字节流服务。面向连接意味着两个使用T C P的应用(通常是

2016-09-17 16:45:17 774

转载 网络之 TCP传输小数据包效率问题(译自MSDN)

摘要:当使用TCP传输小型数据包时,程序的设计是相当重要的。如果在设计方案中不对TCP数据包的延迟应答,Nagle算法,Winsock缓冲作用引起重视,将会严重影响程序的性能。这篇文章讨论了这些问题,列举了两个案例,给出了一些传输小数据包的优化设计方案。背景:当Microsoft TCP栈接收到一个数据包时,会启动一个200毫秒的计时器。当ACK确认数据包发出之后,计时器会复位

2016-09-17 16:38:44 676

原创 Android之蓝牙startDiscovery()搜索不到设备

以前做的蓝牙程序,用我现在的三星 S7E调试,居然完全搜索不到设备。。原来S7E的系统> Android6.0 ,权限机制跟以前不同参考:http://blog.csdn.net/lqhed/article/details/52266507所以需在AndroidManifest增加如下两个权限

2016-08-21 11:53:58 6868

转载 Android之Android 6.0权限机制及开发流程详解

权限机制变更的背景在Android6.0之前,app安装时会提示用户此app需要使用哪些权限,但用户不能单独对某项权限进行授权或拒绝,只要用户选择了安装,即表示用户接受了app对这些权限的使用,如果用户不希望app获取某些涉及隐私的信息,例如读取通讯录,读取短信,获取地理位置等,只能选择不安装。在这套权限机制下,用户只能在安装应用和拒绝权限之间二选一,选择拒绝权限就意味着不能使

2016-08-21 11:44:39 3586

原创 Android之eclipse错误 error opening trace file: No such file or directory (2)解决办法总结

1. android:targetSdkVersion=xx 没有设置,或者和目标机不一致2. 注册activity时,class名字不一致

2016-08-17 16:16:45 2148 1

原创 Android之eclipse错误 Call requires API level 3 (current min is 1) 原因分析与解决办法

打开蓝牙工程出现这个错误按照网上说的 在工程上右键 -> Android Tools -> Clear Lint Markers,只能暂时去掉错误提示,重新保存又会出现原因:没有设定minSdkVersion,或者版本不对解决:对于我的蓝牙工程来说 ,在manifest增加 android:minSdkVersion="6" 就解决了问题

2016-08-17 15:39:53 2830

转载 数据接收之环形缓冲 TCP粘包处理-RingBuf方法

TCP粘包是指发送方发送的若干包数据到接收方接收时粘成一包,从接收缓冲区看,后一包数据的头紧接着前一包数据的尾。粘包可能由发送方造成,也可能由接收方造成。TCP为提高传输效率,发送方往往要收集到足够多的数据后才发送一包数据,造成多个数据包的粘连。如果接收进程不及时接收数据,已收到的数据就放在系统接收缓冲区,用户进程读取数据时就可能同时读到多个数据包。因为系统传输的数据是带结构的数据,需要做分包处理

2016-07-18 22:31:37 2733

转载 Java之Socket上的Read操作阻塞问题

从Socket上读取对端发过来的数据一般有两种方法:1)按照字节流读取[java] view plain copyBufferedInputStream in = new BufferedInputStream(socket.getInputStream());  int r = -1;  List l = new LinkedL

2016-07-18 22:05:49 3265

转载 Java之BufferedInputStream详解 源码分析学习笔记

BufferedInputStream 是一个带有内存缓冲的 InputStream.1.首先来看类结构 :BufferedInputStream是继承自FilterInputStream。FilterInputStream继承自InputStream属于输入流中的链接流,同时引用了InputStream,将InputStream封装成一个内部变量,同时构造方法上需要传入一个I

2016-07-13 19:51:28 940

转载 Java之性能调优指南—-java.io.BufferedInputStream和java.util.zip.GZIPInputStream

摘要: BufferedInputStream和GZIPInputStream是在读取文件数据中经常使用到的两个类(至少后者在Linux系统中被广泛使用)。一般来说,缓冲输入数据是一种很好的想法,这在许多关于Java性能的书籍中都有描述。对于这些流,仍 ...BufferedInputStream和GZIPInputStream是在读取文件数据中经常

2016-07-13 19:45:30 721

转载 Java之 BufferedInputStream详解 (缓冲输入流)的认知、源码和示例

本章内容包括3个部分:BufferedInputStream介绍,BufferedInputStream源码,以及BufferedInputStream使用示例。转载请注明出处:http://www.cnblogs.com/skywang12345/p/io_12.htmlBufferedInputStream 介绍BufferedInputStream 是缓冲输入流。它继

2016-07-13 19:43:26 3088

转载 单片机之STM32 中的 assert_param 函数

我们在学STM32的时候函数assert_param出现的几率非常大,上网搜索一下,网上一般解释断言机制,做为程序开发调试阶段时使用。下面我就谈一下我对这些应用的看法,学习东西抱着知其然也要知其所以然。4 断言机制函数assert_param我们在分析库函数的时候,几乎每一个函数的原型有这个函数assert_param();下面以assert_param(IS_GPIO_ALL_PERIP

2016-07-13 19:13:39 1741

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除