Welcome 微信登录

首页 / 移动开发 / Android

Android提高之使用NDK把彩图转换灰度图的方法

Android提高之使用NDK把彩图转换灰度图的方法

一般而言在Android上使用JAVA实现彩图转换为灰度图,与J2ME上的实现方法类似,不过遇到频繁地转换或者是大图转换时,就必须使用NDK来提高速度了。本文主要通过JAVA和NDK这两种方式来分别实现彩图转换为灰度图,并给出速度的对比,供大家参考。先来简单地介绍一下Android的NDK使用步骤:以NDK r4为例,或许以后新版的NDK的使用方法略有不同。1、下载支持C++的android-ndk-r4-crystax,支持C++的话可玩性更强。2、下载...
Android提高之多级树形菜单的实现方法

Android提高之多级树形菜单的实现方法

一般来说在Android里要实现树形菜单,都是用ExpandableList(也有高手自己继承ListView或者LinearLayout来做),但是ExpandableList一般只能实现2级树形菜单。本文所述实例也依然使用ExpandableList,但是要实现的是3级树形菜单。本文程序运行效果图如下图所示:当用BaseExpandableListAdapter来实现二级树形菜单时,父项(getGroupView())和子项(getChildView(...
Android提高之自定义Menu(TabMenu)实现方法

Android提高之自定义Menu(TabMenu)实现方法

一般使用过UCWEB-Android版的人都应该对其特殊的menu有一定的印象,把menu做成Tab-Menu(支持分页的Menu),可以容纳比Android传统的menu更丰富的内容(Android的menu超过6项则缩略在[更多]里),本文参考网上的例子的基础上对例子进行简化以及封装,使其作为一个复合控件融入自己的framework。先来看看本文程序运行的效果如下图所示:TabMenu本身就是一个PopupWindow,PopupWindow上面放了两...
Android提高之MediaPlayer播放网络音频的实现方法

Android提高之MediaPlayer播放网络音频的实现方法

前面有文章曾经地介绍过MediaPlayer的基本用法,这里就更加深入地讲解MediaPlayer的在线播放功能。本文主要实现MediaPlayer在线播放音频的功能,由于在线视频播放比在线音频播放复杂,因此先介绍在线音频播放的实现,这样可以帮助大家逐步深入了解MediaPlayer的在线播放功能。先来看看本文程序运行的结果如下图所示:main.xml的源码如下:<?xml version="1.0" encoding="utf-8"?...
Android提高之MediaPlayer播放网络视频的实现方法

Android提高之MediaPlayer播放网络视频的实现方法

前面讲解了MediaPlayer播放网络音频,主要介绍了MediaPlayer关于网络音频的缓冲和进度条控制的方法,本文再来讲解一下MediaPlayer播放网络视频的方法。播放网络视频比播放网络音频需要多一个SurfaceView而已,在已经熟悉了MediaPlayer播放网络音频之后,相信大家对本文所述的播放网络视频也能很快地掌握。先来看看本文程序运行截图,如下所示:本文程序的视频来自http://daily3gp.com,大家可以替换程序中的视频链接...
Android提高之手游转电视游戏的模拟操控

Android提高之手游转电视游戏的模拟操控

目前智能电视终端(智能电视和智能电视盒子)已经越来越火,过去主打视频功能,如今的智能电视终端不仅会继续完善视频功能,还会加入电视游戏功能,同时这也赶上了“电视游戏机解禁”的时机。当今的大部分Android手游都能够在Android系统的电视终端上运行,其中有少数手游是原生支持手柄(例如MOGA手柄),这部分游戏可以作为电视游戏。但其他手游(射击,赛车,动作等游戏)若要在电视上玩,就需要修改操控模式,把触摸屏操控改为手柄实体键操控。本文主要讲解的是如何使用/...
Android提高之Android手机与BLE终端通信

Android提高之Android手机与BLE终端通信

最近穿戴设备发展得很火,把相关技术也带旺了,其中一项是BLE(Bluetooth Low Energy)。BLE是蓝牙4.0的核心Profile,主打功能是快速搜索,快速连接,超低功耗保持连接和传输数据,弱点是数据传输速率低,由于BLE的低功耗特点,因此普遍用于穿戴设备。Android 4.3才开始支持BLE API,所以请各位客官把本文代码运行在蓝牙4.0和Android 4.3及其以上的系统,另外本文所用的BLE终端是一个蓝牙4.0的串口蓝牙模块。注:...
Android提高之BLE开发Android手机搜索iBeacon基站

Android提高之BLE开发Android手机搜索iBeacon基站

前面文章讲述了Android手机与BLE终端之间的通信,而最常见的BLE终端应该是苹果公司倡导的iBeacon基站。iBeacon技术基于BLE,它的特点是通过广播对外发送消息,手机不需要连上iBeacon基站也能获取它的信息,目前主要用来做室内定位和营销信息推送,在BLE发出的广播里带上带上特定的信息从而被识别为iBeacon。在iOS里面使用iBeacon要经过passbook注册iBeacon的UUID和对应的文字简介,而在Android上则无类似p...
Android上使用ZXing识别条形码与二维码的方法

Android上使用ZXing识别条形码与二维码的方法

目前有越来越多的手机具备自动对焦的拍摄功能,这也意味着这些手机可以具备条码扫描的功能。手机具备条码扫描的功能,可以优化购物流程,快速存储电子名片(二维码)等。本文所述实例就使用了ZXing 1.6实现条码/二维码识别。ZXing是个很经典的条码/二维码识别的开源类库,早在很久以前,就有开发者在J2ME上使用ZXing了,只不过需要支持JSR-234规范(自动对焦)的手机才能发挥其威力,而目前已经有不少Android手机具备自动对焦的功能。本文代码运行的结果...
Android编程中避免内存泄露的方法总结

Android编程中避免内存泄露的方法总结

Android的应用被限制为最多占用16m的内存,至少在T-Mobile G1上是这样的(当然现在已经有几百兆的内存可以用了——译者注)。它包括电话本身占用的和开发者可以使用的两部分。即使你没有占用全部内存的打算,你也应该尽量少的使用内存,以免别的应用在运行的时候关闭你的应用。Android能在内存中保持的应用越多,用户在切换应用的时候就越快。作为我的一项工作,我仔细研究了Android应用的内存泄露问题,大多数情况下它们是由同一个错误引起的,那就是对一个...
Android天气预报之基于HttpGet对象解析天气数据的方法

Android天气预报之基于HttpGet对象解析天气数据的方法

本文实例所述为Android天气预报之解析天气数据的代码,可实现获取HttpGet对象读取天气网站天气数据,并从数据中解析出天气数据,比如温度、温度、风力、风向、未来几天天气趋势、当天天气状况、空气污染指数等信息,还包括了调用对应的图片或天气动画文件,对于开发android天气预报程序的可以参考本文实例。具体功能代码如下:import java.io.IOException;import java.text.SimpleDateFormat;import ...
Android实现获取未接来电和未读短信数量的方法

Android实现获取未接来电和未读短信数量的方法

本文实例展示了Android实现获取未接来电和未读短信数量的方法,在Android程序开发中非常常见,是非常实用的功能,现分享给大家供大家参考。具体如下:一、未读短信首先注册Observer,当有新短信或彩信来的时候会调用 onChange方法,我们可以在onChange方法中去获取未读短信和彩信,然后做一些UI上的处理!具体功能代码如下:private ContentObserver newMmsContentObserver = new Content...
Android手机获取root权限并实现关机重启功能的方法

Android手机获取root权限并实现关机重启功能的方法

本文实例讲述了Android手机获取root权限并实现关机重启功能的方法,是Android程序设计中非常常见的重要功能。现分享给大家,供大家在Android程序开发中参考之用。具体功能代码如下:/* * 执行命令 * @param command * 1、获取root权限 "chmod 777 "+getPackageCodePath() * 2、关机 reboot -p * 3、重启 reboot */public static boolean exec...
<< 161 162 163 164 165 166 167 168 169 170 >>