<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[nanoage的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/nanoage</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; nanoage]]></copyright><item><title><![CDATA[Android定位功能开发(4)——地理编码(地址与经纬度)]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/128312189</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/128312189</guid><author>nanoage</author><pubDate>Wed, 14 Dec 2022 10:13:58 +0800</pubDate><description><![CDATA[地理编码指地址与经纬度互相转换。地理编码功能通过查询地理信息数据库实现，数据库存放的数据量巨大，只能在服务器端实现。客户端要实现地理编码功能，需通过HTTP协议，将地址或经纬度信息发送给服务器，服务器转换后再将经纬度或地址信息返回给客户端。百度地图API将与服务器的通信过程封装了，开发者不用直接和服务器通信，直接调用API即可。]]></description><category></category></item><item><title><![CDATA[Android定位功能开发(3)——地图服务(地图点与经纬度)]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/128311774</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/128311774</guid><author>nanoage</author><pubDate>Wed, 14 Dec 2022 09:52:55 +0800</pubDate><description><![CDATA[本文介绍用百度地图API实现基本的地图服务，包括三项功能：（1）让地图显示某个经纬度位置；（2）获取地图上某个点的经纬度；（3）在地图上标注出某个位置。]]></description><category></category></item><item><title><![CDATA[Android定位功能开发(2)——用百度地图API显示地图]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/128248711</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/128248711</guid><author>nanoage</author><pubDate>Fri, 09 Dec 2022 10:50:04 +0800</pubDate><description><![CDATA[要将位置数据以地图的形式显示，需要使用第三方的地图服务。常用的地图服务有谷歌地图、百度地图、高德地图等。这里我们以百度地图为例进行介绍。使用百度地图服务需要以下步骤：一、注册百度开发者帐号；二、申请使用百度地图服务的密钥，即AK(API Key)；三、下载百度地图SDK；四、在项目中引入需要的jar包和.so文件；五、调用百度地图API]]></description><category></category></item><item><title><![CDATA[Android定位功能开发(1)——获取位置]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/128114107</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/128114107</guid><author>nanoage</author><pubDate>Wed, 30 Nov 2022 14:18:19 +0800</pubDate><description><![CDATA[基于位置的服务包括三个方面：获取位置、地图服务、地理编码服务。获取位置是所有基于位置的服务的基础，Android获取位置使用LocationManager类。首先获取LocationManager的实例，然后一般要检查位置服务是否开启。如果未开启，就打开设置位置服务界面。如果已开启，再检查应用的定位权限是否允许。都通过了，就可以设置一个位置监听器，有了位置信息就会调用监听器的相应方法。设置监听器时可以设置位置监听的最小时间间隔和最小距离间隔，只有这两个条件都满足时才会有位置信息。]]></description><category></category></item><item><title><![CDATA[Android网络功能开发(7)——UDP协议通信]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127967672</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127967672</guid><author>nanoage</author><pubDate>Mon, 21 Nov 2022 16:44:35 +0800</pubDate><description><![CDATA[UDP通信的流程中，接收端先监听某个端口，等待接收其它设备发来的数据包。发送端准备好数据包后，发送给接收端。接收端只需一个接收线程就可接收多个客户端发来的数据包。一个应用可以同时包含发送端和接收端。本文通过一个例子介绍如何代码如何编写。这个例子是一个Android应用和一个JavaSE程序通过UDP通信。双方都同时实现接收端和发送端，双方可以像聊天一样随意地互相发送消息。]]></description><category></category></item><item><title><![CDATA[Android网络功能开发(6)——TCP协议通信]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127967224</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127967224</guid><author>nanoage</author><pubDate>Mon, 21 Nov 2022 16:32:59 +0800</pubDate><description><![CDATA[TCP通信的双方需要建立连接，所以先由一方监听某个端口，等待其他设备来连接，这一方称为服务器端。另一方向服务器端发起连接请求，称为客户端。服务器端接受客户端的连接请求后，双方之间的连接建立起来。连接建立后，双方对于连接的使用是相同的，都可以通过连接发送和接收数据。本文通过一个简单的聊天室原型来演示如何编程实现TCP通信。客户端用Android实现，服务器端在JavaSE上实现。]]></description><category></category></item><item><title><![CDATA[Android网络功能开发(5)——Socket编程接口]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127967028</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127967028</guid><author>nanoage</author><pubDate>Mon, 21 Nov 2022 16:17:37 +0800</pubDate><description><![CDATA[Socket是编写用TCP/IP协议进行通信的程序的API接口，TCP/IP协议是互联网上使用的通信协议，不局限于HTTP的一问一答方式，可以随发随收。JavaSE平台提供了Socket编程接口，Android上也能使用。]]></description><category></category></item><item><title><![CDATA[Android网络功能开发(4)——文件下载和上传]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127842909</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127842909</guid><author>nanoage</author><pubDate>Mon, 14 Nov 2022 10:49:55 +0800</pubDate><description><![CDATA[本文介绍了Android端用HTTP协议实现文件下载和上传的原理和代码，以及服务器端的代码。]]></description><category></category></item><item><title><![CDATA[Android网络功能开发(3)——数据格式：XML和JSON]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127842482</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127842482</guid><author>nanoage</author><pubDate>Mon, 14 Nov 2022 10:28:20 +0800</pubDate><description><![CDATA[HTTP协议中可以采用XML格式或JSON格式传输结构化数据。本文介绍用Java代码构建和解析XML格式和JSON格式的数据，可以用于Android客户端和JavaEE服务器端通信中。]]></description><category></category></item><item><title><![CDATA[Android网络功能开发(2)——使用HTTP协议]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127725595</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127725595</guid><author>nanoage</author><pubDate>Mon, 07 Nov 2022 10:03:11 +0800</pubDate><description><![CDATA[Android使用HTTP协议主要是作为客户端，用HTTP GET方法从服务器获取数据，用HTTP POST方法向服务器传送数据。本文介绍的是用HttpURLConnection类来发送HTTP请求。用HttpURLConnection发送HTTP请求的流程是：创建对象、设置参数、建立连接、传输数据、处理返回的数据。我们通过一个最简化的BBS系统原型来介绍如何实现HTTP GET和POST，包括一个Android客户端和Web服务器端。]]></description><category></category></item><item><title><![CDATA[Android网络功能开发(1)——WebView控件使用]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127725331</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127725331</guid><author>nanoage</author><pubDate>Mon, 07 Nov 2022 09:46:40 +0800</pubDate><description><![CDATA[WebView控件用来在应用中显示网页，就好比是在应用中嵌入了一个浏览器窗口。有了这个浏览器窗口，还可以实现与HTML5混合式开发，从而使应用具有跨平台、便于更新等优点。WebView的用法和ImageView等控件的用法基本一样，使用时可以分两个步骤。第一步先把WebView添加到界面中，然后第二步再通过调用某个方法载入网页。]]></description><category></category></item><item><title><![CDATA[Android多媒体功能开发(14)——Camera2框架]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127612031</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127612031</guid><author>nanoage</author><pubDate>Mon, 31 Oct 2022 11:49:26 +0800</pubDate><description><![CDATA[Camera2框架的相机模型被设计成一个管道，使用相机时需要先和相机设备建立一个会话，通过该会话向相机发送请求，相机将图像数据保存到配置好的Surface，Surface就是存放图像数据的缓冲区。请求分为单次请求、重复请求和多次请求三种。]]></description><category></category></item><item><title><![CDATA[Android多媒体功能开发(13)——使用MediaRecorder类录制视频]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127611392</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127611392</guid><author>nanoage</author><pubDate>Mon, 31 Oct 2022 11:14:45 +0800</pubDate><description><![CDATA[用MediaRecorder类实现录像功能的基本步骤是：创建MediaRecorder对象、设置音视频源、设置输出格式和音视频编码格式、设置预览控件和输出文件、准备、开始录制、停止录制、释放资源。停止录制后可以重置，然后开始另一个录制过程。]]></description><category></category></item><item><title><![CDATA[Android多媒体功能开发(12)——使用Camera类拍照]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127485834</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127485834</guid><author>nanoage</author><pubDate>Mon, 24 Oct 2022 09:57:10 +0800</pubDate><description><![CDATA[使用Camera类调用摄像头进行拍照的基本流程是：打开Camera对象、设置预览控件、开始预览、拍照、停止预览、释放资源。拍照后会停止预览，所以如果需要多次拍照的话，需要再次开始预览。要切换摄像头的话，需要先释放当前摄像头，再重新打开新的摄像头。]]></description><category></category></item><item><title><![CDATA[Android多媒体功能开发(11)——使用AudioRecord类录制音频]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127485313</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127485313</guid><author>nanoage</author><pubDate>Mon, 24 Oct 2022 09:29:58 +0800</pubDate><description><![CDATA[使用AudioRecord录音的基本步骤是：确定录音参数、申请缓冲区、创建AudioRecord对象、开始录制、循环读取数据到缓冲区并处理数据、停止录制、释放资源。]]></description><category></category></item><item><title><![CDATA[Android多媒体功能开发(10)——使用MediaRecorder类录制音频]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127439253</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127439253</guid><author>nanoage</author><pubDate>Fri, 21 Oct 2022 09:30:24 +0800</pubDate><description><![CDATA[使用MediaRecorder录音的基本步骤是：创建MediaRecorder对象、设置参数、准备、开始录制、停止录制、释放资源。]]></description><category></category></item><item><title><![CDATA[Android多媒体功能开发(9)——使用SurfaceView控件+MediaPlayer类播放视频]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127406767</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127406767</guid><author>nanoage</author><pubDate>Wed, 19 Oct 2022 14:12:01 +0800</pubDate><description><![CDATA[使用SurfaceView控件+MediaPlayer类播放视频的主要原理是把MediaPlayer对象的显示控件设置为SurfaceView对象。播放控制都是针对MediaPlayer对象，用法与播放音频相同。]]></description><category></category></item><item><title><![CDATA[Android多媒体功能开发(8)——使用VideoView控件播放视频]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127406494</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127406494</guid><author>nanoage</author><pubDate>Wed, 19 Oct 2022 13:58:58 +0800</pubDate><description><![CDATA[用VideoView播放视频的基本步骤是：创建或获取VideoView控件、设置视频数据源、开始播放、停止播放、释放资源。播放过程中可以暂停和继续。停止播放后可以恢复，此时会再从头播放。也可以重新设置视频数据源，播放另一个视频。]]></description><category></category></item><item><title><![CDATA[Android多媒体功能开发(7)——使用SoundPool类播放音频]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127363509</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127363509</guid><author>nanoage</author><pubDate>Mon, 17 Oct 2022 14:50:11 +0800</pubDate><description><![CDATA[使用SoundPool的基本流程是：创建一个SoundPool对象、载入要播放的音频、播放某个音频、停止播放某个音频。]]></description><category></category></item><item><title><![CDATA[Android多媒体功能开发(6)——使用MediaPlayer类播放音频]]></title><link>https://blog.youkuaiyun.com/nanoage/article/details/127363147</link><guid>https://blog.youkuaiyun.com/nanoage/article/details/127363147</guid><author>nanoage</author><pubDate>Mon, 17 Oct 2022 14:45:16 +0800</pubDate><description><![CDATA[使用MediaPlayer播放音频的基本流程是创建MediaPlayer对象、设置音频数据源、准备、开始播放、停止播放、释放资源。播放过程中可以暂停和继续，停止播放后可以重新准备再次播放，也可以重置音频数据源再播放其他音频。]]></description><category></category></item></channel></rss>