自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 做Android客户端一个半月的一点想法

2018-02-08 17:53:49 251

原创 Android面试小结

小弟不才从一个做ROM的公司裸辞,一心想扑倒互联网的怀抱,可是天不由人面了好久,很是惨烈,没有做APP的项目经验真的头大啊,也算是给自己一个成长的机会吧,希望自己能够如愿找到称心的工作,最近一直在听一首歌分享给大家《欢乐颂》,人生低潮的时候可以听,很鼓舞士气,哈哈哈哈哈哈哈好了,下面把自己面试一些总结写出来给大家参考,还有个人的一些答案,如有错误,请帮忙指正,感谢!关于四大组件:

2017-12-13 17:33:09 871

转载 android nfc中Ndef格式的读写

检测到标签后在Activity中的处理流程1. 在onCreate()中获取NfcAdapter对象;NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(this);2.在onNewIntent()中获取Tag对象或者NdefMessage信息;获取Tag对象:Tag tag = intent.getParcelableEx

2017-05-16 23:53:25 3716

转载 NFC在Android平台的架构与移植

NFC Architecture in Android SystemNFC在安卓系统中的架构如下,从上到下每一层都有涉及到,但是和移植Sensor等其他外围设备有所不同,他从上到下都是独立于整个系统框架之外的。就好似附在 Android 这颗参天大树上的一束藤蔓。下面是我们将其移植到 Android 系统需要在各个层级所添加的内容。 Porting Guide现在

2017-05-16 23:51:32 2342

转载 NFC的android实现

NFC简介:Near Field Communication 近场通信,是一种数据传输技术。与wifi、蓝牙、红外线等数据传输技术的一个主要差异就是有效距离一般不能超过4cm。NFC支持3种工作模式:1.读卡器模式;2.仿真卡模式;3.点对点模式;1.读卡器模式:通过NFC设备(支持NFC的Android手机)

2017-05-16 23:50:42 466

转载 Android nfc模块读写MifareClassic卡50

一般来说,基于MifareClassic的射频卡;1K:16个分区(sector),每个分区4个块;对于所有基于MifareClassic的卡来说,;KeyA:6bytes;AccessConditions:4bytesK;M1卡分为16个扇区,每个扇区由4块(块0、块1;块0块1;扇区0;块2块3块0块1;扇区1;块2块3;密码A存取控制密码B:::;块0一般来说,基于MifareCla

2017-05-16 23:48:01 883

转载 [NFC]NFC App开发

前面描述了NFC的Tag流程和P2P流程,从实用的角度来看,我们会在介绍一下Tag和P2P APP开发的流程的一些介绍。TAG APP开发介绍        为了清楚的描述问题,使用GITHUB上的开源项目NfcReader作为讲解对象,如果有兴趣的,可以下载到local研究一下。分析方法:1. 查看AndroidManifest.xml文件,查

2017-05-16 23:39:17 1418

转载 [NFC]P2P设备响应流程

前文[NFC]Tag设备响应流程中有提到P2P设备的发现的函数始于:onLlcpLinkActivated().        本文将基于onLlcpLinkActivated()开始后文的分析,进而引出P2P流程中的SNEP,NDEFPUSH,HANDOVER以及ECHOSERVER的响应过程.        程序进入 onLlcpLinkActivate

2017-05-16 23:38:17 1125

转载 [NFC]Tag设备响应流程

接上部分的分析,当前系统已经进入到applyRouting()阶段,后续应该是需要一直去监听当前是否有NFC设备进入通讯范围。如果有适合的NFC设备,则底层会先进行沟通,并将消息通知给上层。进入NFC设备发现流程        下面从applyRouting()函数开始分析,可以参考系统注释:[java] view plain copy

2017-05-16 23:37:26 1861

转载 [NFC]NFC启动流程2

正式进入NFCService.Java,开始NFC framework探索, jiu~~~~        接上篇文章内容,进入NfcService后,就开始启动各种Services,Hold on,一大波代码马上到来:[java] view plain copy print?{          mUse

2017-05-16 23:36:34 1443

转载 [NFC]NFC启动流程1

前面介绍过NFC相关的Spec后,从本章节开始,将进入Android AOSP NFC Frameworks部分的学习。       代码主要的路径存放在:      Android5.0\packages\apps\Nfc 包含以下目录:             Assets:含start.png             etc:nfcee_acces

2017-05-16 23:35:17 545

转载 [NFC]NDEF和RTD协议介绍

依据前文中介绍SNEP中封装的是NEDF消息,而NDEF消息最终会用到RTD的格式进行封装,此文章会依序介绍NDEF和RTD的specification。 NDEF简介         NDEF(NFC data exchange format)是在LLCP链路被激活时使用到。        NDEF spec的主要目的有:        -  封装

2017-05-16 23:34:26 1203

转载 [NFC]SNEP协议介绍

依照消息处理的流程,LLCP的消息会封装成SNEP,交由上层进行分析处理。此章节将重点介绍SNEP Spec中重要的部分。        1.      SNEP简介        2.      SNEP协议 SNEP简介            SNEP(SimpleNDEF Exchange Protocol)是通过request/respons

2017-05-16 23:33:54 3054

转载 [NFC]LLCP协议介绍

依照学习流程,此章节主要介绍NFCForum中LLCP Spec。主要是将LLCP spec中重要的内容摘要出来,包含的内容肯定不是很全面,但基本上看代码是够用了。主要分为三部分:        1.LLC概述        2.LLC协议        3.LLCP链路 1     LLC概述        LLC:(logicallink c

2017-05-16 23:33:09 3462

转载 移动支付之智能IC卡与Android手机进行NFC通信

本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处!       目前常见的智能IC卡运行着JavaCard虚拟机,智能IC卡上可以运行由精简后的Java语言编写的卡应用(简称Applet)。智能IC卡的Applet不能自己启动,必须由外部终端(例如POS机,地铁刷卡终端等)向卡片发送Select命令,由此选中卡片的Applet,Applet才能运行

2017-05-16 23:28:17 669

转载 Android nfc读卡模式流程

最近一个项目需要将Android的nfc接口底层通过串口对接到外围一个单片机上,而nfc设备是接在单片机上的,这就需要对Android的nfc框架进行梳理,确定与单片机对接的接口通讯;上网查找发现资料不少,本次分析主要参考了以下大神的博客,基本上已经是非常清楚了!按照自己的理解对相关部分进行整理!nfc的相关背景知识请参照此博客查阅即可:http://blog.csdn.NET/xuwen03

2017-05-16 23:26:25 7023

转载 android NFC开发

先说说NFC开发总结,看了几天NFC开发资料,搜集了不少关于这方面的资料、demo、以及他人的总结。以下有部分是摘录总结的。因为要是现在总结也是那些,最后附送代码。关于demo我也有,有需要在评论去发邮箱给我。一、NFC的配置总结第一:屏幕没有锁住 。     第二:NFC功能已经在设置中打开当系统检测到一个NFC标签的时候,他会自动去寻找最合适的activity去处理这个in

2017-05-16 23:25:31 890

原创 Android中基于Nuplayer的RTSP框架解析

一、整体框架图Android中基于NuPlayer的RTSP框架如下图所示(该图来自网上)。整个图主要分为两个部分,一部分是NuPlayer的架构,另一部分则是实现了基于RTSP的流媒体播放功能,即RTSPSource。当然还有一些其他的Source,如图中的HTTPLiveSource,还有图中没有画出的GenericSource、StreamingSou

2016-10-07 22:14:09 1533

转载 OMXCodec与OMX事件处理流程

OMXCodec.cpp类属于libstagefright,在整个MM PF 相当OMX的适配层,供awesomeplayer调用,而OMX.cpp,OMXNoteInstance.cpp等相当于OpenMax中的OpenMax IL,首先讲下OMXCodec与OMX callback事件的处理流程。先看整个流程的时序图吧:          从时序图看,首

2016-10-07 22:12:19 280

转载 用HTTP协议传输媒体文件 学习

用HTTP协议传输媒体文件 学习用HTTP协议传输媒体文件可以分两个阶段,第一个阶段是Progressive Download(渐进式下载方式)阶段,第二个阶段是HTTP streaming(HTTP流化)阶段。其中,第一个阶段可以看成第二个阶段的前身。Progressive Download  渐进式下载是一种顺序流式传输,它是一种简单的从HTTP WEB服务器进行文件下

2016-10-07 21:24:35 9557

转载 OpenCore框架概述(二)

OpenCore Player介绍:OpenCore的Player的编译文件是pvplayer/Android.mk,将生成动态库文件libopencoreplayer.so。这个库包含了两方面的内容:一方是Player的engine(引擎),一方面是为Android构件的Player,这实际上是一个适配器(adapter)。libopencoreplayer.so中包含了以下内容

2016-10-07 20:51:43 323

转载 OpenCore框架概述(一)

OpenCore是一个多媒体的框架,从宏观上来看,它主要包含了两大方面的内容:PVPlayer:提供媒体播放器的功能,完成各种音频(Audio)、视频(Video)流的回放(Playback)功能。PVAuthor:提供媒体流记录的功能,完成各种音频(Audio)、视频(Video)流的捕获(Recording)功能PVPlayer和PVAuthor以SDK的形式提供给开发者,可以在这个SDK之上

2016-10-07 20:51:00 700

转载 AwesomePlayer的准备工作

http://blog.csdn.net/myarrow/article/details/70675741. 前提条件本文以播放本地文件为例,且setDataSource时传入的是文件的url地址。在Java中,若要播放一个本地文件,其代码如下:MediaPlayer mp = new MediaPlayer();mp.setDataSource(PATH_TO_F

2016-10-07 19:55:33 270

转载 Android的MediaPlayer架构介绍

本文主要介绍的是Android中很重要也最为复杂的媒体播放器(MediaPlayer)部分的架构。对于Android这样一个完整又相对复杂的系统,一个MediaPlayer功能的实现不在其具体的功能,而是具体功能如何适应Android系统Android MediaPlayer的主要具体实现在OpenCore的Player中,这部分不是本文的关注点。本文关注的是MediaPlayer系统的架构,其他

2016-10-07 19:31:10 2051

转载 NuPlayer介绍

Android2.3时引入流媒体框架,而流媒体框架的核心是NuPlayer。Android4.0之后HttpLive和RTSP协议开始使用NuPlayer播放器,Android5.0(L版本)之后本地播放也开始使用NuPlayer播放器。 视频是如何播放的DataSource有两个概念:上面框图中的DataSourceInput(或者直接叫DataSource)指的是单纯的

2016-10-06 13:59:00 685

转载 RTSP 协议 简单交互过程

Real Time Streaming Protocol或者RTSP(实时流媒体协议),是由Real network 和 Netscape共同提出的如何有效地在IP网络上传输流媒体数据的应用层协议。RTSP提供一 种可扩展的框架,使能够提供可控制的,按需传输实时数据,比如音频和视频文件。源数据可以包括现场数据的反馈和存贮的文件。rtsp对流媒体提供了诸如暂停,快进等控制,而它本身并不传输数据,rt

2016-10-06 13:52:41 2041

转载 流式传输的实现途径

首先,多媒体数据必须进行预处理才能适合流式传输,这是因为目前的网络带宽对多媒体巨大的数据流量来说还显得远远不够。预处理主要包括两方面:一是降低质量;二是采用先进高效的压缩算法。   其次,流式传输的实现需要缓存。这是因为Internet以包传输为基础进行断续的异步传输,对一个实时A/V源或存储的A/V文件,在传输中它们要被分解为许多包,由于网络是动态变化的,各个包选择的路由可能不尽相同,故

2016-10-06 13:42:11 4393

转载 RTMP详解

转自:http://mingyangshang.github.io/2016/03/06/RTMP%E5%8D%8F%E8%AE%AE/RTMP协议是Real Time Message Protocol(实时信息传输协议)的缩写,它是由Adobe公司提出的一种应用层的协议,用来解决多媒体数据传输流的多路复用(Multiplexing)和分包(packetizing)的问题。随着VR技术的发

2016-10-06 01:23:10 858

转载 流媒体协议介绍(RTP/RTCP/RTSP/MMS/HLS/HTTP progressive streaming)

http://blog.csdn.net/tttyd/article/details/12032357 Android Supported Media Formats当前在internet上传送音频和视频等信息主要有两种方式:下载,完整下载一个视频,再去播放流式传输,如优酷、爱奇艺等视频网址(土豆,优酷网的视频传输方法)下面介绍的这些协议,都是流式传输RTP

2016-10-05 18:56:47 1483

转载 AHandler机制

AHandler机制Android APP开发中为了不阻塞UI线程,利用handler,把UI线程分开异步执行,使用handler去执行某项比较费时的操作,然后异步更新UI线程。这部分是用Java来实现的,和传统Java的线程机制很类似。流媒体(5.0中用的是NuPlayer)中也是类似的,因为联网,codec都很费时,需要异步执行。AHandler机制基于C++的实现,NuPlayer就

2016-10-04 12:33:45 398

转载 分析的rtsp流媒体的问题

前面几篇博文都是关于http协议的流媒体,这篇博客分享一篇分析的rtsp协议的流媒体的问题。问题北京:播放一个内网服务器上面的音频文件,拖动进度条,必现的会有so crash的现象查看log,crash的地方是:CHECK_LE(offset + payloadLength, buffer->size());这个宏没有满足导致。在分析

2016-10-03 17:47:33 349

转载 《如何在 Vitamio 中使用自己编译的 FFmpeg?》

Vitamio 3.0 实在 Android NDK r8b 环境下构造的, 因此建议你使用NDK r8b 构造你的制定 FFmpeg. 通过开发 者们的反馈, 如果用其他版本的 NDK 会有很多问题, 甚至崩溃.构造FFmpeg:  首先需要从我们的 GitHub(http://github.com/yixia/FFmpeg-Android)克隆一份 FFmpeg-Android

2016-10-03 17:23:02 289

转载 rtsp流媒体buffer填充的处理过程

NuPlayer流媒体播放器中从网络上取得的rtp包在解码和显示时所用buffer的填充和清空的机制,与stagefright框架播放本地视频时的处理流程类似。都是通过回调函数fillbuffer及emptybuffer来实现的。NuPlayer中的ACodec与Stagefright中的OMXCodec的作用相似。以下是rtsp流媒体中填充待解码的buffer,以及把解码后的buff

2016-10-03 16:46:40 907

原创 Android分层

Android的分4层,java应用程序,java框架,本地框架和java运行环境,Linux内核空间1.Java应用程序无需过多解释,基本可以理解为各个App,由Java语言实现。2.Java框架层就是常说的Framework,这层里东西很多也很复杂,比如说主要的一些系统服务如ActivityManagerService、PackageManagerService等,我们编写的Andro

2016-10-03 01:41:41 269

转载 Android Audio Overview

音乐播放器是手机中重要的娱乐应用,我们在开发播放器有可能用到mediaplayer,或者AudioTrack来播放音频文件,对应应用开发者来说,我们只要了解了暴露出来的API就可以了,但是光了解API还是不能全面的理解设计者的理念和思路,无法清楚音频如何选择什么的设备进行输出。下面我们本着探讨的目的来了解下audio的架构,完善我们对audio的了解。首先看下整个audio的框架结构。

2016-10-03 01:36:36 241

转载 OMXCodec与OMX事件处理流程

学习了解Mutilmedia Framework有一段时间了,今天闲下来稍微整理整理。OMXCodec.cpp类属于libstagefright,在整个MM PF 相当OMX的适配层,供awesomeplayer调用,而OMX.cpp,OMXNoteInstance.cpp等相当于OpenMax中的OpenMax IL,首先讲下OMXCodec与OMX callback事件的处理流程。先看整个流程

2016-10-03 01:33:56 254

转载 android多媒体框架之流媒体具体流程篇3----base on jellybean(十三)

上一篇我们讲到了从web server 中获取了sessiondescription,并解析出了media server的路径和一些基本的媒体信息。下面我们开始讲述如何跟mediaserver建立连接并控制服务器端和客户端以达到播放,暂停,停止的目的。首先跟media server建立连接 SETUP:具体的格式如下(UDP):C->A(audio): SETUPrtsp://au

2016-10-03 01:28:08 252

转载 android多媒体框架之流媒体具体流程篇2----base on jellybean(十二)

上篇我们讲了流媒体RTSP部分的setdataSource方法,prepare没有实质的东西,我们直接讲start方法, 这个方法是它的核心方法,比较复杂,我们先来看下整个start方法的时序图吧,让大家有个大概的了解:  跟踪下代码,看看start里面有什么名堂?NuPlayer.cppvoid NuPlayer::start() {    (new AMessage

2016-10-03 01:27:13 220

转载 android多媒体框架之流媒体具体流程篇1----base on jellybean(十一)

构成nuplayer的过程,无非就是初始化一些状态,标志位,重要的是起了消息队列,也就是我们上篇写的AHandler消息机制:http://blog.csdn.net/tjy1985/article/details/8063484,我们也不多说了,直接进入setdataSource,先来个概图吧:setDataSource分三步来走:1:创建相应的消息2:根据URL创建对应

2016-10-03 01:26:01 201

转载 android多媒体框架之流媒体AHandler消息机制----base on jellybean(十)

为什么我们要谈论流媒体的消息机制呢?因为在流媒体中,类似于我们写APP的时候,为了不阻塞UI线程,我们把利用handler,把UI线程分开异步执行,使用handler去执行某项比较费时的操作,然后异步更新UI线程。流媒体中也是类似的,因为联网,codec都很费时,需要异步执行。handler是Java的实现机制,而我们下面要讲的AHandler就是基于C++的实现了。我们知道handler消息

2016-10-03 01:24:27 285

空空如也

空空如也

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

TA关注的人

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