
android
ijk666
MCU、Linux、Androd
展开
-
Android之如何判断定位是否开启及定位模式
1、关于Android系统中不同的定位模式Android系统中包括3中定位模式: 使用GPS、WLAN和移动网络使用WLAN和移动网络仅使用GPS截图特点同时使用GPS、WIFI及基站定位,速度快、精度高,室内定位效果好。缺点:耗流量、耗电量只使用WIFI和基站定位,转载 2017-09-21 19:02:00 · 9085 阅读 · 0 评论 -
Android之蓝牙startDiscovery()搜索不到设备
以前做的蓝牙程序,用我现在的三星 S7E调试,居然完全搜索不到设备。。原来S7E的系统> Android6.0 ,权限机制跟以前不同参考:http://blog.youkuaiyun.com/lqhed/article/details/52266507所以需在AndroidManifest增加如下两个权限原创 2016-08-21 11:53:58 · 6921 阅读 · 0 评论 -
Android之Android 6.0权限机制及开发流程详解
权限机制变更的背景在Android6.0之前,app安装时会提示用户此app需要使用哪些权限,但用户不能单独对某项权限进行授权或拒绝,只要用户选择了安装,即表示用户接受了app对这些权限的使用,如果用户不希望app获取某些涉及隐私的信息,例如读取通讯录,读取短信,获取地理位置等,只能选择不安装。在这套权限机制下,用户只能在安装应用和拒绝权限之间二选一,选择拒绝权限就意味着不能使转载 2016-08-21 11:44:39 · 3625 阅读 · 0 评论 -
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 · 2160 阅读 · 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 · 2848 阅读 · 0 评论 -
H.264之纯码流封装成各种格式的文件
H264纯码流封装成各种格式比如:ffmpeg -i sample.h264 output.mp4原创 2016-07-08 22:48:17 · 1216 阅读 · 0 评论 -
Android之SD卡 模拟器中SD卡的创建和文件导入导出
篇章一:SD卡的创建:一 SDCard介绍1.SDCard可以把他看看做是移动硬盘或U盘,也就是手机的内存卡2.SDCard的创建是在eclipse创建模拟器时随同创建,也可以使用dos命令创建二 SDCard的使用在程序中访问SDCard的时候需要申请访问的SDCard权限,即是在AndroidManifest.xml中加入SDCard的权限允转载 2016-07-08 22:28:16 · 5965 阅读 · 1 评论 -
Android之SD卡以追加形式写文件并把文件保存到SD卡中
android手机内存本来就不大,要是老把数据放在手机里,很明显会让手机的使用者体验到什么是“卡”,所以,我们把数据要放到SD卡中,以减少手机内存的使用,本文仅写入文件,不对读文件进行说明。好,go!第一步:新建android项目,命名为Testnext -> next ..一切默认第二步:在AndroidManifest.xml中添加权限往往是用到什么再最转载 2016-07-08 22:24:26 · 380 阅读 · 0 评论 -
Android之SD卡简单的文件读写操作
最近有这样的需求,把每次统计到的数据,以txt形式保存到手机SD卡或是手机内存中,遇到一些问题,记录下来。首先如果要在程序中使用sdcard进行存储,我们必须要在AndroidManifset.xml文件进行下面的权限设置:[html] view plain copy uses-permission a转载 2016-07-08 22:22:25 · 1252 阅读 · 0 评论 -
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 · 3289 阅读 · 0 评论 -
Android之SDK更新问题Failed to fetch URL https://dl-ssl.google.com/android...
试过好多方法都不行,连以前可以更新的国内镜像,居然都不能更新。。最后按照下面两步更新成功:1、在SDK Mangager下Tools->Options勾中Force https://... sources to be fetched using http://...2、修改C:\WINDOWS\system32\drivers\etc中的hosts文件,在最后一行添加74.125.原创 2016-07-05 07:44:26 · 145 阅读 · 0 评论 -
H.264之在android手机端的解码与播放
1、NAL全称Network Abstract Layer, 即网络抽象层。 在H.264/AVC视频编码标准中,整个系统框架被分为了两个层面:视频编码层面(VCL)和网络抽象层面(NAL)。其中,前者负责有效表示视频数据的内容,而后者则负责格式化数据并提供头信息,以保证数据适合各种信道和存储介质上的传输。因此我们平时的每帧数据就是一个NAL单元(SPS与PPS除外)。在实际的转载 2016-07-02 19:56:38 · 5062 阅读 · 1 评论 -
Java之BufferedInputStream详解 源码分析学习笔记
BufferedInputStream 是一个带有内存缓冲的 InputStream.1.首先来看类结构 :BufferedInputStream是继承自FilterInputStream。FilterInputStream继承自InputStream属于输入流中的链接流,同时引用了InputStream,将InputStream封装成一个内部变量,同时构造方法上需要传入一个I转载 2016-07-13 19:51:28 · 969 阅读 · 0 评论 -
Java之性能调优指南—-java.io.BufferedInputStream和java.util.zip.GZIPInputStream
摘要: BufferedInputStream和GZIPInputStream是在读取文件数据中经常使用到的两个类(至少后者在Linux系统中被广泛使用)。一般来说,缓冲输入数据是一种很好的想法,这在许多关于Java性能的书籍中都有描述。对于这些流,仍 ...BufferedInputStream和GZIPInputStream是在读取文件数据中经常转载 2016-07-13 19:45:30 · 749 阅读 · 0 评论 -
Java之 BufferedInputStream详解 (缓冲输入流)的认知、源码和示例
本章内容包括3个部分:BufferedInputStream介绍,BufferedInputStream源码,以及BufferedInputStream使用示例。转载请注明出处:http://www.cnblogs.com/skywang12345/p/io_12.htmlBufferedInputStream 介绍BufferedInputStream 是缓冲输入流。它继转载 2016-07-13 19:43:26 · 3112 阅读 · 0 评论 -
Android之JNI NDK开发的常见问题
背景: 最近一个月一直在做移植库的工作,将c代码到share library移植到Android平台。这就涉及到Android NDK(native develop kit)内容。这里只想记录下JNI(java native interface)经常遇到到问题。 问题1. 忘记delete local reference。带New到方法(如:NewByteArray)这样到方法比较好转载 2016-06-28 20:37:21 · 422 阅读 · 0 评论 -
Android之蓝牙 一个简单实用的Android蓝牙程序实例
作者: 张奇 我将在这篇文章中介绍了的Android蓝牙程序。这个程序就是将实现把手机变做电脑PPT播放的遥控器:用音量加和音量减键来控制PPT页面的切换。遥控器服务器端首先,我们需要编写一个遥控器的服务器端(支持蓝牙的电脑)来接收手机端发出的信号。为了实现这个服务器端,我用到了一个叫做Bluecove(专门用来为蓝牙服务的!)的Java库。以下是我转载 2016-09-20 11:20:09 · 2421 阅读 · 0 评论 -
Android之蓝牙 聊天程序的设计和实现 bluetooth chat
作者在这里介绍的这个实例是Google SDK中提供的一个蓝牙聊天程序,简单但信息量巨大,非常适合初学者学习蓝牙方面的知识。在学习这个实例前请读者仔细阅读并理解Socket的工作原理和实现机制,作者的这篇博客中有详细的介绍:http://blog.youkuaiyun.com/dlutbrucezhang/article/details/8577810在Andr转载 2016-09-20 11:35:24 · 1883 阅读 · 0 评论 -
Android之根据经纬度查询位置地址名称
这几天在做一个LBS的应用,需要把当前获取的经纬度转化成当前位置名称(文字描述),因为当前的经纬度很容易知道,根据网络或者GPS就可以得到,所以关键是把经纬度转化位置的具体描述,但是又不想使用百度或者sso的地图sdk,搞得很烦锁,杀鸡焉用牛刀嘛,所以应该可以有一种很简单的方法。查找了一些资料,目前有两个方法,一种使用Android提供的类Geocoder,调用getFromLocation(la转载 2017-09-21 18:58:23 · 2719 阅读 · 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 · 1735 阅读 · 0 评论 -
Android之启动界面之Splash总结
方法一:很多应用都会有一个启动界面。欢迎画面慢慢隐现,然后慢慢消隐。实现这种效果的方法有两种(暂时只发现两种)1、使用两个Activity,程序启动时候load第一张Activity,然后由tick触发N秒钟后startActivity另外一张Activity。2、使用一个Activity,可以用到View.gone() 这个方法。把Acitivity的某些元素移除。1、两转载 2017-09-12 17:36:59 · 1097 阅读 · 0 评论 -
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 · 320 阅读 · 0 评论 -
Android之无法隐藏标题栏 继承AppCompatActivity的Activity无法隐藏标题栏解决方案
问题描述:继承了AppCompatActivity的Activity无法通过调用requestWindowFeature(Window.FEATURE_NO_TITLE)来隐藏标题栏。[java] view plain copypublic class MainActivity extends AppCompatActivity {转载 2017-09-14 10:05:54 · 662 阅读 · 0 评论 -
Android之版本-自动添加编译时间-自动修改版本号
android应用程序的版本号Version name可以在android manifest下手动修改,在code中调用api获取该版本号。 项目中的目标是:每编译一次程序都会自动修改版本号,而不需要手动修改,由于中间debug的次数较多,我打算以每次Build时的当前时间作为版本号。 操作步骤: 1. Android工程目录的assets文件夹下新建一文件,命名为v转载 2016-12-07 12:01:11 · 3197 阅读 · 0 评论 -
Android之版本-更优雅的 Android 发布自动版本号方案
以前看到一些自动化版本号打包的文章。如果您的项目是用 Git 管理的,并且恰巧又是使用 Gradle 编译(应该绝大部分都是这样的了吧?),本文试图找到一种更加优雅的自动版本管理方法。1 背景我们都知道,Android 应用的版本管理是依赖 AndroidManifest.xml 中的两个属性:android:versionCode:版本号,是一个大于 0 的整数,相当于 Buil转载 2016-12-07 11:58:17 · 1191 阅读 · 0 评论 -
Android之版本-APP编译时自动生成版本号
近期有一个工作任务:按照某个规则,给Android应用设置一个在编译时自动生成的versionCode与versionName。这一点倒是不奇怪,很多正式的应用都有自己的一套版本号管理。市面上什么某某应用几点零,就是这样的一个产物。我这个任务的难度除了自动生成,还有一个附加条件:在Android项目中编译(通过Android.mk)和在Android Studio中编译(通过build.g转载 2016-12-07 11:54:30 · 2732 阅读 · 0 评论 -
Android之APP版本号和版本名称的重要性
当我们在刚开始学习Android的时候,可能不会过多的关注这个位于manifest.xml文件中的versionCode和versionName。但是其实一个好的版本控制,对于我们有至关重要的作用。现在打算写一点基础的东西,突然想到这个知识点,所以就记录下来,作为笔记。有不够详尽或者错误的地方欢迎指教。版本控制对于发布新版本和开发中的版本维护有着关键性的作用,版转载 2016-12-06 16:12:11 · 1624 阅读 · 0 评论 -
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 · 713 阅读 · 0 评论 -
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 · 2116 阅读 · 0 评论 -
Android之eclipse 自定义菜单工具栏
Window -> Perspective -> Customize PerspectiveMenu Visibility 可以设置新建菜单..原创 2016-09-22 11:46:14 · 1726 阅读 · 0 评论 -
Android之XML 特殊字符 警告 Replace “…” with ellipsis character (…, &&;#8230;)
很多人就像我一样,用三个点来表示省略号,所以出警告提示:使用省略号(…, &&;#8230;) 来代替三个点解决办法:1、打两个点2、打四个点。。。。反正不要打三个点3、真的打省略号。还记得吗,是shift+6,六个点,回删就是3个点4、直接输入下面的十进制编码附上 HTML特殊符号对照表特殊符号命名实原创 2016-09-24 17:43:13 · 3756 阅读 · 1 评论 -
Android之蓝牙 详细使用操作步骤
通常情况下,我们对蓝牙的操作主要有:开启和关闭蓝牙、搜索周边设备、能被周边设备所发现、获取配对设备、蓝牙设备间的数据传输。 1、打开蓝牙(当然首先要确保你的手机是有蓝牙设备的) 蓝牙设备主要分为两部分,一部分为本地设备,另一部分为远程设备。BluetoothAdapter——本地设备,对蓝牙操作首先就需要有一个BluetoothAdapter实例。常用的几个方法转载 2016-09-20 17:28:02 · 1962 阅读 · 0 评论 -
Android之布局layout_weight的详细完整解释 分析和总结
研究了一下,写个比较完整的总结,分四种情况1、 控件中只有一个设置layout_weight属性的控件,那么它将独占剩余空间2、 layout_width或者 layout_height 设置为"0dp" 严格按照layout_weight设置的比例,即我们的正常理解3、 layout_width或者 layo原创 2016-09-23 18:46:14 · 605 阅读 · 0 评论 -
Android之蓝牙 开发基本流程
此例子基于 android demo对于一般的软件开发人员来说,蓝牙是很少用到的,尤其是Android的蓝牙开发,国内的例子很少 Android对于蓝牙开发从2.0版本的sdk才开始支持,而且模拟器不支持,测试至少需要两部手机,所以制约了很多技术人员的开发; 鉴于很多开发人员现在也有蓝牙开发的需求,也为了大家少走些弯路,先将我积攒的一点点在Android蓝牙开转载 2016-09-20 11:51:39 · 451 阅读 · 0 评论 -
Android之JNI打印调试信息-LOG打印
1. 导入log头文件在你使用的 .c/ .cpp 文件中导入 log.h 头文件 #include2.在Android.mk 中加上LOCAL_LDLIBS :=-llog注意Android.mk里有一行include $(CLEAR_VARS)必须把LOCAL_LDLIBS :=-llog放在它后面才有用,否则转载 2016-06-28 20:32:01 · 614 阅读 · 0 评论 -
Android之Tombstone/Crash的log分析和定位-错误分析
有一句话叫做常在河边走,哪有不湿鞋。我们这些研究和开发Android的工程师正应了这句话,相必大家在调试的时候经常会遇到这么个东西吧*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***Build fingerprint: 'XXXXXXXXX'pid: 1658, tid: 13086 >>> system转载 2016-06-28 20:28:47 · 1217 阅读 · 0 评论 -
Android之ListView使用方法-SimpleAdapter-两个TextView
首先是布局文件,这里需要两个布局文件,一个是放置列表控件的Activity对应的布局文件 main.xml,另一个是ListView中每一行信息显示所对应的布局 list_item.xml 这一步需要注意的问题是ListView 控件的id要使用Android系统内置的 android:id="@android:id/list" [注意形式]main.xml复制代码 代码如转载 2016-05-20 19:35:02 · 915 阅读 · 0 评论 -
Android之ListView使用方法-ArrayAdapter-SimpleAdapter-BaseAdapter
一个ListView通常有两个职责。(1)将数据填充到布局。(2)处理用户的选择点击等操作。第一点很好理解,ListView就是实现这个功能的。第二点也不难做到,在后面的学习中读者会发现,这非常简单。一个ListView的创建需要3个元素。(1)ListView中的每一列的View。(2)填入View的数据或者图片等。(3)连接数据与List转载 2016-05-20 19:42:57 · 646 阅读 · 0 评论 -
Android之ListView使用方法-SimpleAdapter-SimpleCursorAdapter
要将数据库中的数据列表显示在屏幕上,我们要使用ListView这个控件,当用户从数据库中取出数据时,要将数据绑定到显示控件上,如何绑定呢,我们需要创建适配器进行绑定,创建适配器有两种方式:第一种是用SimpleAdapter创建(要求绑定的数据是List>数据类型)第二种是用SimpleCursorAdapter创建(要求绑定的数据是Cursor数据类型)显示效果如图所示:转载 2016-05-20 19:50:19 · 631 阅读 · 0 评论 -
Android之ListView使用方法-ArrayAdapter-SimpleCursorAdapter-SimpleAdapter-BaseAdapter
在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示。抽空把对ListView的使用做了整理,并写了个小例子,如下图。 列表的显示需要三个元素:1.ListVeiw 用来展示列表的View。2.适配器 用来把数据映射到ListView上的中介。3.数据 具体的将被映射的字符串,图片,或者基转载 2016-05-20 19:53:18 · 441 阅读 · 0 评论