Android应用开发
TedSmile
Android、人工智能、深度学习、人脸识别
展开
-
Action,Category,Intent
Action常用属性:Action常量对应字符串简单说明ACTION_MAINandroid.intent.action.MAIN应用程序入口ACTION_VIEWandroid.intent.action.VIEW显示指定数据ACTION_ATTACH_DATAan原创 2013-08-03 11:31:05 · 1338 阅读 · 0 评论 -
Android高手进阶:Adapter深入理解与优化
转自:http://www.eoeandroid.com/thread-536377-1-1.html一般是针对包含多个元素的View,如ListView,GridView,ExpandableListview,的时候我们是给其设置一个Adapter。Adapter是与View之间提供数据的桥梁,也是提供每个Item的视图桥梁。以ListView为例,其工作原理为:转载 2016-03-30 11:47:31 · 518 阅读 · 0 评论 -
ImageCoverFlow
开源源码详见:https://github.com/dolphinwang/ImageCoverFlow在智能跑步机上使用效果图:How to Use:Step One: Add CoverFlowView to your projectVia XML:com.dolphinwang.imagecoverflow.CoverFlo原创 2016-03-08 09:50:55 · 1943 阅读 · 2 评论 -
在APP里调用第三方文件管理器进行管理文件
在一些APP开发项目中碰到如下情况: 需要管理特定目录下的文件(进行浏览、删除、排序、发送等等操作),然而自己开发这些功能显得比较费劲。这时完全可以借助开源的第三方文件浏览器实现,未完待续。。。原创 2016-02-18 17:17:14 · 3718 阅读 · 0 评论 -
Eclipse如何快速调试系统App(具有系统权限的Android App)即Eclipse导入系统签名快速调试系统App
具有系统权限的Android App(AndroidManifest.xml中设置android:sharedUserId="android.uid.system")需要经过系统签名后才能运行。以下方法三能快速调试开发系统App,其他方法费时费力。方法一: App直接加入系统编译,编译系统过程中完成App编译及系统签名。方法二: 使用Eclips原创 2016-04-07 12:07:43 · 2097 阅读 · 0 评论 -
在Activity实时显示当前APP所耗网速 TrafficStats.getUidRxBytes
static long getMobileRxBytes() //获取通过Mobile连接收到的字节总数,不包含WiFi static long getMobileRxPackets() //获取Mobile连接收到的数据包总数 static long getMobileTxBytes() //Mobile发送的总字节数 static long getMobileTxPackets() //Mobile发送的总数据包数 static long getTotalRxBytes原创 2016-03-16 15:58:31 · 4168 阅读 · 2 评论 -
Android开发人员不得不收集的代码
原文:https://github.com/passiontim/AndroidUtilCode为方便查找,已进行大致归类,其目录如下所示:App相关→AppUtils.java安装App installApp卸载指定包名的App uninstallApp获取当前App信息 getAppInfo获取所有已安装App信息 getAllAppsInfo根据包名判断A转载 2016-09-13 09:13:59 · 1534 阅读 · 0 评论 -
Android应用如何开机自启动、自启动失败原因
自启动失败的原因接收不到BOOT_COMPLETED广播可能的原因转载 2016-12-08 16:44:04 · 4024 阅读 · 0 评论 -
Android设备运行超过10天凌晨2:59~4:01期间自动重启
1、APP为系统应用,需要签名;2、APP位于/system/app下,才能接收到"android.intent.action.BOOT_COMPLETED"广播;原创 2016-12-09 11:25:12 · 876 阅读 · 0 评论 -
Android 外接USB转串口设备开发笔记(Android与单片机通过usb转串口通信)
本文以使用USB转串口芯片PL2303为例,经测试Android设备与外设通信ok。1、USB转串口驱动drivers/usb/serial/pl2303.cdrivers/usb/serial/pl2303.h驱动加载成功则当插入外设时会生成/dev/ttyUSB*设备节点,若如此节点应考虑驱动问题。2、上层应用,即读写串口,波特率设置等源码下载地址:ht原创 2016-02-22 15:57:03 · 21914 阅读 · 14 评论 -
Android4.2 以太网Ethernet DHCP和静态设置实现
前提:下面涉及的内容均需要系统权限,也就是系统应用,开发非系统app则饶边。以太网设置一般是进入系统原生的设置APP,进入到以太网选项进行设置的。在一些专用场合,需要定制APP,不直接调用系统的设置,那么就要自己实现以太网动态和静态的设置。权限:<uses-permission android:name="android.permission.WRITE_SETTIN...原创 2017-03-03 13:09:38 · 11788 阅读 · 7 评论 -
重要文件写操作请用FileOutputStream,FileWriter有坑
使用FileWriter写文件,一、覆盖写入,会清空文件内容;二、追加写入;当使用FileWriter覆盖写入时,碰到设备突然断电,会导致文件变成空文件,文件内容彻底丢了。所以,对于不带电池的设备来讲,重要文件写操作不要使用FileWriter,请使用FileOutputStream;FileOutputStream fos = null;try { fos = new F原创 2017-11-01 16:21:36 · 1373 阅读 · 0 评论 -
android camera YUV转JPG图片存储
public static void saveYUVtoPicture(byte[] data,int width,int height) throws IOException{ FileOutputStream outStream = null; File file = new File("/mnt/sdcard/Camera"); if(!file.exists()){ fi原创 2017-10-23 11:31:26 · 3527 阅读 · 0 评论 -
android camera yuv帧水平翻转
Camera预览时需要对yuv帧做水平翻转处理,直接在onPreviewFrame(byte[] data, Camera camera)里调用Mirror函数,处理完后的图片和预览效果成水平翻转关系。private void Mirror(byte[] src, int w, int h) { //src是原始yuv数组 int i; int index;原创 2017-10-17 14:15:07 · 4798 阅读 · 7 评论 -
Android 反射机制获取或设置系统属性(SystemProperties)
原文:http://blog.csdn.net/doris_d/article/details/52998237android.os.SystemProperties 提供了获取和设置系统属性的方法,但是这个类被隐藏了,应用开发时无法直接访问,可以通过反射的机制进行操作。获取系统属性public static public String getProperty(转载 2017-12-12 15:45:25 · 555 阅读 · 0 评论 -
身份证阅读器Android版
Android设备通过usb口和精伦身份证阅读器通信,根据《Android二次开发接口说明V2.1》开发App,读取身份证相关信息,包括头像、姓名、住址等等。。。...原创 2018-02-27 10:39:11 · 3684 阅读 · 3 评论 -
android 二维码扫描动画实现
box.9.png line.png 布局: <RelativeLayout android:id="@+id/box_layout" android:layout_width="200dp" android:layout_height="200dp" android:layout_centerHorizonta...原创 2018-06-22 16:49:24 · 4958 阅读 · 3 评论 -
Android splitActionBarWhenNarrow ActionBar背景颜色设置
当你的应用AndroidManifest.xml中添加了android:uiOptions="splitActionBarWhenNarrow"时,如果对ActionBar的android:background进行了设置,那么以下两个属性也需要同步设置,否则会出现窄屏显示和非窄屏显示ActionBar背景颜色不一致android:backgroundStackedandroid:backgroun原创 2016-03-01 15:16:34 · 1305 阅读 · 0 评论 -
Permission Denial: not allowed to send broadcast android.intent.action.MEDIA_MOUNTED解决方法
最近项目中使用了github中开源的文件管理器,如下:https://github.com/brucend/FileManager_Micode在android4.4及以上版本的手机里运行,碰到如下问题:12-21 12:02:07.643: E/AndroidRuntime(28893): java.lang.RuntimeException: An error occured原创 2015-12-21 17:12:14 · 7588 阅读 · 0 评论 -
Android调用WIFI设置
//直接调用系统自带的WIFI设置界面与Android的版本有关系//在Android版本10以下,调用的是:ACTION_WIRELESS_SETTINGS,版本在10以上的调用:ACTION_SETTINGS。//代码如下:if(android.os.Build.VERSION.SDK_INT > 10) {// 3.0以上打开设置界面,也可以直接用ACTION_WIR转载 2013-08-26 17:07:40 · 11767 阅读 · 0 评论 -
Android 判断某个APK是否已安装
privateboolean isAppInstalled(String uri) { PackageManager pm = getPackageManager(); boolean installed =false; try { pm.getPackageInfo(uri,PackageManager.GET_ACTIVITIES); installed =true; } catch(Pa转载 2013-09-16 09:27:09 · 9409 阅读 · 1 评论 -
详细解析BluetoothAdapter的详细api
一 BluetoothAdapter简介1.继承关系该类仅继承了Object类;2.该类作用BluetoothAdapter代表了移动设备的本地的蓝牙适配器, 通过该蓝牙适配器可以对蓝牙进行基本操作, 例如 : 启动设备发现(startDiscovery), 获取已配对设备(getBoundedDevices), 通过mac蓝牙地转载 2014-02-08 16:36:15 · 29023 阅读 · 4 评论 -
android 打开app先显示欢迎界面后自动跳到主界面
public class WelcomeActivity extends Activity{ private final long SPLASH_LENGTH = 2000; Handler handler = new Handler(); public void onCreate(Bundle savedInstanceState) { super.onCreat原创 2015-03-18 14:15:54 · 21515 阅读 · 5 评论 -
Android 创建线程执行任务
一、新建CommonWorkingThread类,如下:import android.os.Handler;import android.os.HandlerThread;import android.util.Log;public class CommonWorkingThread { private static HandlerThread thread = null; p原创 2015-09-08 15:20:14 · 695 阅读 · 0 评论 -
Android AIDL
什么是AIDLAndroid系统中的进程之间不能共享内存,因此,需要提供一些机制在不同进程之间进行数据通信。为了使其他的应用程序也可以访问本应用程序提供的服务,Android系统采用了远程过程调用(Remote Procedure Call,RPC)方式来实现。与很多其他的基于RPC的解决方案一样,Android使用一种接口定义语言(Interface Definition Lan转载 2015-09-25 13:51:25 · 448 阅读 · 0 评论 -
Serializable和Parcelable的区别
[android] Serializable 和 Parcelable 区别android 中自定义的对象序列化的问题有两个选择一个是Parcelable,另外一个是Serializable。一 序列化原因:1.永久性保存对象,保存对象的字节序列到本地文件中;2.通过序列化对象在网络中传递对象;3.通过序列化在进程间传递对象。 二 至于选取哪种可参考转载 2015-09-30 16:49:17 · 444 阅读 · 0 评论 -
使用Spannable或Html.fromHtml设置字体、颜色、超链接等
TextView和EditText是用来显示文本的,有时需要给TextView中的个别字设置为超链接,或者设置个别字的颜色、字体等,那就需要用到Spannable对象,可以借助Spannable对象实现以上设置。使用步骤:SpannableString spannable = new SpannableString(str);// SpannableStringBuilder sp转载 2015-11-03 11:34:21 · 16740 阅读 · 2 评论 -
Android AsyncTask实例
下面是AsyncTask实例,package com.example.asynctask;import java.io.ByteArrayOutputStream; import java.io.InputStream; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; impo原创 2015-11-05 11:45:47 · 681 阅读 · 0 评论 -
在eclipse中将android项目生成apk并且给apk签名
生成apk最懒惰的方法是:只要你运行过android项目,到工作目录的bin文件夹下就能找到与项目同名的apk文件,这种apk默认是已经使用debug用户签名的。如果想要自己给apk签名:1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们转载 2015-09-18 16:36:53 · 417 阅读 · 0 评论 -
Android AlarmManager实现不间断轮询服务
在消息的获取上是选择轮询还是推送得根据实际的业务需要来技术选型,例如对消息实时性比较高的需求,比如微博新通知或新闻等那就最好是用推送了。但如果只是一般的消息检测比如更新检查,可能是半个小时或一个小时一次,那用轮询也是一个不错的选择,因为不需要额外搭建推送服务器,不用额外配置推送服务。另外推送现在一般以维持长连接的方式实现,在手机客户端也会耗费一定的电量。今天就介绍一个在Android上实现轮询机制转载 2015-10-09 17:11:02 · 770 阅读 · 0 评论 -
一个IntentService使用实例
主线程进度条显示后台耗时任务的执行进度。MainActivity.java文件:package com.example.edgarperez.intentservice;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent原创 2015-11-12 16:06:02 · 1062 阅读 · 0 评论 -
Android Asynchronous Http Client
Android Asynchronous Http ClientA Callback-Based Http Client Library for AndroidAsyncHttpClient-master详见:http://loopj.com/android-async-http/转载 2015-11-23 11:38:46 · 458 阅读 · 0 评论 -
Android BitmapFactory用法总结
一、使用BitmapFactory实现对使用Base64编码的数据的解码从网络上获得的图片数据为Base64编码格式,使用BitmapFactory将其转换成Bitmap,如下: private Bitmap stringtoBitmap(String string){ Bitmap bitmap=null; try {原创 2015-11-03 17:06:54 · 12447 阅读 · 0 评论 -
Android LitePal介绍与使用说明
原文:https://github.com/LitePalFramework/LitePal/blob/master/README.mdLitePal for Android LitePal是一个Android开源库,它使开发者使用SQLite数据库变得非常容易。 你可以不用写一句SQL语句就可以完成大部分数据库操作,包括创建表,更新表,约束操翻译 2015-12-15 16:39:54 · 11649 阅读 · 0 评论 -
Android Handler内存泄漏解决方法
Android Context内存泄漏的情况很多,有兴趣可阅读以下文章:Android学习系列(36)--App调试内存泄露之Context篇(上)Android学习系列(37)--App调试内存泄露之Context篇(下)下面是关于Handler内存泄漏的一种解决方法:1、将Handler声明为静态类;2、在Handler中增加一个对Activity的原创 2016-01-20 15:33:27 · 816 阅读 · 0 评论 -
jni ndk-build 手动编译 参数说明
一、参数说明1、NDK_PROJECT_PATH说明:指定工程目录示例:ndk-build NDK_PROJECT_PATH=E:\android\android_studio_dir\Mt9v034\app\src\main2、NDK_LIBS_OUT说明:指定.so文件输出目录,默认值为"$(NDK_PROJECT_PATH)/libs"示例:ndk-build NDK_LIB...原创 2018-12-18 10:40:37 · 1565 阅读 · 0 评论