Android学习
跃哥学习Android之路上的一些总结和实用手册
程序员小跃
前杭州华为Android工程师,现游戏公司Java后端主程。专注于以 Java 为中心扩展的校招、职场、编程技术进阶,和优秀的你一起学习。
展开
-
【AAC 系列二】深入理解架构组件的基石:Lifecycle
Photo by Kelly Sikkema on Unsplash这是程序亦非猿的第 85期分享。作者 l 程序亦非猿来源 l 程序亦非猿(ID:chengxuyi...转载 2019-05-14 21:45:02 · 341 阅读 · 0 评论 -
Android NDK学习 <六> 复杂结构动态库处理和第三方库的移植
作者: Sam (甄峰) [email protected]. 动态库加载方式:方法1:在运行时动态链接库, 动态地将程序和共享库链接并让 Linux 在执行时加载库(动态链接,系统加载)方法2:动态加载库并在程序控制之下使用它们。(动态加载)NDK学习 复杂结构动态库处理和第三方库的移植" name="image_operate_49113376022转载 2013-01-28 16:51:26 · 956 阅读 · 0 评论 -
Android NDK学习 <五> C++ 支持
作者: Sam (甄峰) [email protected].基础知识:Android Platform提供一个非常小的C++ runtime 支持库(/system/lib/libstdc++)和头文件。但此System C++库支持非常有限,不支持以下 : - Standard C++ Library support (except a few trivial转载 2013-01-28 16:50:27 · 1407 阅读 · 0 评论 -
Android NDK学习 <四> Application.mk简介
作者:Sam (甄峰) [email protected]简介:0. 基础知识介绍:Application.mk用来描述应用程序需要哪些modules。Application.mk通常放在:$PROJECT/jni/Application.mk。2. Application.mk变量:Application.mk是GNU转载 2013-01-28 16:49:44 · 2040 阅读 · 0 评论 -
Android NDK学习 <三> Android.mk实例和NDK实用技巧
作者:Sam (甄峰) [email protected]例1:JNI程序使用libhello-jni.so的符号。libhello-jni.so由hello-jni.c组成。hello-jni.c如下:#include #include #include #define LOG_TAG "libhello-jni"#d转载 2013-01-28 16:48:06 · 858 阅读 · 0 评论 -
Android NDK学习 <二> Android.mk的制作
作者:Sam (甄峰) [email protected]. Android.mk简介:Android.mk文件用来告知NDK Build 系统关于Source的信息。 Android.mk将是GNU Makefile的一部分,且将被Build System解析一次或多次。所以,请尽量少的在Android.mk中声明变量,也不要假定任何东西不会在解析过程中定义。转载 2013-01-28 16:46:57 · 1877 阅读 · 0 评论 -
Android NDK学习 <一> 简介
作者:Sam (甄峰) [email protected] NDK( Native Developer Kit )是个工具集,它提供一套方法,使Android应用程序(Java程序)可以内嵌native(C,C++)程序。Android应用程序(Java程序)运行于Dalvik虚拟机中。NDK允许应用程序的一部分使用native语言(C,C++)来实现。这对很转载 2013-01-28 16:46:14 · 891 阅读 · 0 评论 -
深入了解android平台的jni(二)
Android.mk是Android提供的一种makefile文件,用来指定诸如编译生成so库名、引用的头文件目录、需要编译的.c/.cpp文件和.a静态库文件等。要掌握jni,就必须熟练掌握Android.mk的语法规范。一、Android.mk文件的用途 一个android子项目中会存在一个或多个Android.mk文件。 1、单一的Android.转载 2013-01-26 17:15:42 · 582 阅读 · 0 评论 -
深入了解android平台的jni(一)
android中很多Java类都具有native接口,这些接口由本地实现,然后注册到系统中,主要的JNI代码放在以下的路径中:frameworks/base/core/jni/,这个路径中的内容被编译成库 libandroid_runtime.so,被放置在目标系统的/system/lib目录下。此外,android还有其他的 JNI库。JNI中的各个文件,实际上就是普通的C++源文件。如果要深入转载 2013-01-26 17:14:51 · 662 阅读 · 0 评论 -
cygwin+ndk+eclipse下JNI技术入门
1、JNI的编写步骤1)编写带有native 声明的java类.2)编译java文件成class类3)使用javah -jni com.ikags.project.XXXX 编译成.h文件4)使用C/C++编写代码5)编写makefile文件,将.h和.c(.cpp)文件编译成.dll(.so)文件6)将.dll(.so)文件提供给项目,用system.loadLibrar转载 2013-01-26 17:06:59 · 658 阅读 · 0 评论 -
Android.mk文件语法规范及使用模板
Android.mk文件语法规范根据eoeandroid上的的连载,进行一些更新、修改和加亮。今天翻译ANDROID-MK.TXT文件(英文原文件在/development/Ndk/Docs/android-mk.txt)Android.mk文件语法规范 Introduction:Android.mk编译文件是用来向Android NDK描述你的C,C++源代码文件的,这篇转载 2013-01-26 17:12:51 · 603 阅读 · 0 评论 -
手把手教你OPENCV FOR ANDROID 之二_ android开发环境搭建
转自:http://blog.csdn.net/tu_tustudio/article/details/8463119 参考:http://docs.opencv.org/doc/tutorials/introduction/android_binary_package/O4A_SDK.html这片文章是介绍如何安装和配置 OpenCV4Android SDK 的,这下总算到正题转载 2013-01-25 15:49:07 · 2371 阅读 · 0 评论 -
手把手教你OPENCV FOR ANDROID之一_android开发环境搭建
转自:http://blog.csdn.net/tu_tustudio/article/details/8463111前言:近期打算搞搞opencv,搜了一大堆的中文资料后,发现多半都已经过时了,只好去搜官网来重新研究了。一看发现和现在的中文资料出入非常大,于是就有了下面这篇文章。 参考(不是完全翻译的):http://docs.opencv.org/doc/tut转载 2013-01-25 15:48:25 · 1198 阅读 · 0 评论 -
如何在Android中使用OpenCV
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://underthehood.blog.51cto.com/2531780/670169看了网上的很多教程和官方http://opencv.willowgarage.com/wiki/Android提供的如何在Android上使用OpenCV的教程,照着一步一步的做最后总有转载 2013-01-23 13:30:24 · 1574 阅读 · 0 评论 -
Android使用Application总结
Application 配置全局Context第一步、写一个全局的单例模式的MyApplication继承自Application 覆盖onCreate ,在这个方法里面实例化Application第二步、配置全局的Context第三步、使用,使用的时候用的时候根据类的名称访问ContextAndroid程序的入口点很多初入Android开发的网页可能不知道Android程转载 2013-03-14 13:41:16 · 1004 阅读 · 0 评论 -
Android签名及权限变化详解
Android签名及权限变化详解转:http://blog.csdn.net/lyq8479/article/details/6401093本文主要讲解Android应用程序签名相关的理论知识,包括:什么是签名、为什么要给应用程序签名、如何给应用程序签名等。为什么要给Android应用程序签名? 如果只能用一句简单的话语来回答这个问题的话,我会说:转载 2013-02-27 10:11:53 · 577 阅读 · 0 评论 -
Android中SQLite应用详解
上次我向大家介绍了SQLite的基本信息和使用过程,相信朋友们对SQLite已经有所了解了,那今天呢,我就和大家分享一下在Android中如何使用SQLite。现在的主流移动设备像Android、iPhone等都使用SQLite作为复杂数据的存储引擎,在我们为移动设备开发应用程序时,也许就要使用到SQLite来存储我们大量的数据,所以我们就需要掌握移动设备上的SQLite开发技巧。对于Andr转载 2013-03-06 13:22:46 · 787 阅读 · 0 评论 -
Android权限【大全】
android.permission.ACCESS_CHECKIN_PROPERTIES //允许读写访问”properties”表在checkin数据库中,改值可以修改上传 android.permission.ACCESS_COARSE_LOCATION //允许一个程序访问CellID或WiFi热点来获取粗略的位置 android.permission.ACCESS_FINE转载 2013-03-14 13:23:38 · 1021 阅读 · 0 评论 -
泛谈技术的成长
上一篇记录了在杭州的成长,大部分说的都是和同事,朋友相处的情况,然后就觉得自己忽然成长了,牛逼了;其实和同事交流过程中,更多的只是给你意见、建议,然后都需要自个儿埋头苦干(不知大家是否都有如此感觉)。我想大多数程序猿(媛)都和我同感吧,如果没产生共鸣,烦请指导我一下呗。 选择开发,真的是一门活到老学到老的学问,关注Android动态的都知道,在2017的I/O大会上,Google正式把K原创 2017-06-05 22:26:17 · 278 阅读 · 0 评论 -
android ListView详解
在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示。抽空把对ListView的使用做了整理,并写了个小例子,如下图。 列表的显示需要三个元素:1.ListVeiw 用来展示列表的View。2.适配器 用来把数据映射到ListView上的中介。3.数据 具体的将被映射的字符串,图片,或者基本组件。根据列表转载 2013-06-08 16:44:47 · 737 阅读 · 0 评论 -
Android Activity和Intent机制学习笔记
ActivityAndroid中,Activity是所有程序的根本,所有程序的流程都运行在Activity之中,Activity具有自己的生命周期(见http://www.cnblogs.com/feisky/archive/2010/01/01/1637427.html,由系统控制生命周期,程序无法改变,但可以用onSaveInstanceState保存其状态)。对于Activity,关转载 2013-03-19 21:01:07 · 806 阅读 · 0 评论 -
最新颜色代码
最近在弄布局颜色时候发现自己对颜色的定义差的无地自容所以特意找了颜色代码来记录。 #000000 #2F0000 #600030 #460046 #28004D #272727转载 2013-03-19 08:52:32 · 28217 阅读 · 0 评论 -
善用Android预定义样式
字体大小对于能够显示文字的控件(如TextView EditText RadioButton Button CheckBox Chronometer等等),你有时需要控制字体的大小。Android平台定义了三种字体大小。"?android:attr/textAppearanceLarge""?android:attr/textAppearanceMedium""?android:a转载 2013-01-18 13:24:09 · 516 阅读 · 0 评论 -
Android Java 中Thread与Runnable的区别
在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口;Thread类是在java.lang包中定义的。一个类只要继承了Thread类同时覆写了本类中的run()方法就可以实现多线程操作了,但是一个类只能继承一个父类,这是此方法的局限,下面看例子:package org.thread.demo;class MyThread extends Thread转载 2013-01-18 13:21:23 · 523 阅读 · 0 评论 -
Android开发之旅: Intents和Intent Filters(理论部分)
引言大部分移动设备平台上的应用程序都运行在他们自己的沙盒中。他们彼此之间互相隔离,并且严格限制应用程序与硬件和原始组件之间的交互。 我们知道交流是多么的重要,作为一个孤岛没有交流的东西,一定毫无意义!Android应用程序也是一个沙盒,但是他们能够使用Intent、Broadcast Receivers、Adapters、Content Providers、Internet去突破他们的边界互相转载 2013-01-18 12:52:43 · 437 阅读 · 0 评论 -
OpenCV学习心得
时间还是过得那么的快,让我有点措手不及,距离第一次写博客差不多已经过去半个月了,这半个月来总是在学习研究OpenCV方面的知识,让我感受颇深。转载了N篇技术博客,始终不敢自己写一篇属于自己的文章,我在担心自己会不会误人子弟,所以每当自己在网络资源上找到一些解决方法的时候,总是在转载,尽管有些是通过自己的后期努力才完美解决的,但是我仅仅是在转载的时候加上注意事项,并没有写专门的一篇博客,好吧,可能是原创 2013-01-31 13:04:50 · 4877 阅读 · 2 评论 -
ListView 焦点
对于一个布局,其根目录的View将屏蔽他所有子控件的Focus状态,即便这些子控件设置成了Focusable=“true”,其实这段话的意思就是这个变量代表着当前的View将不顾其子控件是否可以Focus自身接管了所有的Focus,通常默认能获得focus的控件有Button,Checkable继承来的所有控件。这就意味着如果你的自定义ListViewItem中有Button或者Checkab转载 2013-02-01 08:38:35 · 713 阅读 · 0 评论 -
Android APK反编译详解(附图)
这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而得到源代码吧,google了一下,确实很简单,以下是我的实践过程。在此郑重声明,贴出来的目的不是为了去破解人家的软件,完全是一种学习的态度,不过好像通过这种方式也可以去汉化一些外国软件。本文Android反编译教程,测试环境:Win7 Ultimate x64Ubuntu 12.04 x86转载 2013-01-31 12:32:19 · 805 阅读 · 0 评论 -
Android网络多线程断点续传下载
本示例介绍在Android平台下通过HTTP协议实现断点续传下载。 我们编写的是Andorid的HTTP协议多线程断点下载应用程序。直接使用单线程下载HTTP文件对我们来说是一件非常简单的事。那么,多线程断点需要什么功能?难在哪里? 1.多线程下载, 2.支持断点。 使用多线程的好处:使用多线程下载会提升文件下载的速转载 2013-02-01 09:07:20 · 845 阅读 · 0 评论 -
android ListView事件的研究(转)
1. ListView的OnItemClickListener不被触发的另外一种情况 如上图,在一个ItemView中,只有一个TextView位于最左侧,他的右侧是空白区域,没有任何控件,当点击右侧区域时,并不会触发OnItemClickListener,当点击TextView所在的区域时,就能触发这个事件。看看这个事件的执行流程右侧空白的部分没有View控件,也就是说虽转载 2013-02-01 08:39:14 · 662 阅读 · 0 评论 -
Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (一) —— 总览
作为一个完成的应用程序,数据存储操作是必不可少的。因此,Android系统一共提供了四种数据存储方式。分别是:SharePreference、SQLite、Content Provider和File。由于Android系统中,数据基本都是私有的的,都是存放于“data/data/程序包名”目录下,所以要实现数据共享,正确方式是使用Content Provider。 SQLite: SQLit转载 2013-01-23 10:19:05 · 609 阅读 · 0 评论 -
Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (三) —— SharePreferences
除了SQLite数据库外,SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data//shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。实现SharedPreferences存储的转载 2013-01-23 10:20:36 · 632 阅读 · 0 评论 -
Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (二) —— SQLite
SQLite是一种转为嵌入式设备设计的轻型数据库,其只有五种数据类型,分别是: NULL: 空值 INTEGER: 整数 REAL: 浮点数 TEXT: 字符串 BLOB: 大数据 在SQLite中,并没有专门设计BOOLEAN和DATE类型,因为BOOLEAN型可以用INTEGER的0和1代替true和false,而DATE类型则可以拥有特转载 2013-01-23 10:20:00 · 528 阅读 · 0 评论 -
LayoutInflater介绍及例子
主要是利用LayoutInflater的inflate方法 相当于findViewById,只不过查找的是layout的资源 LayoutInflater mLayoutInflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);linearLayout1 = (LinearLayo转载 2013-02-02 15:21:27 · 895 阅读 · 0 评论 -
startActivityForResult 使用详解
Starting Activities and Getting ResultsThe startActivity(Intent) method is used to start a new activity, which will be placed at the top of the activity stack. It takes a single argument, an Int转载 2013-01-19 14:47:57 · 637 阅读 · 0 评论 -
Android开发之旅: Intents和Intent Filters(实例部分) - 吴秦 - 博客园
引言 上篇我们介绍了Intents和Intent Filters的理论部分,主要是介绍了:activities、services、broadcast receivers三种组件的Intent机制两种Intent(显式和隐式)及它们如何去匹配目的组件、Intent对象包含哪些信息、Intent Filters的action & category & data。Intent的重要性,我不再转载 2013-01-19 14:19:41 · 1019 阅读 · 0 评论 -
HashMap的遍历两种常用的方法,那就是使用keyset及entryset来进行遍历
对HashMap的用法还是不怎么理解 ,虽然看了好几遍书,看了好几个Demo,可能是我道行不够吧。简单来说说遍历,今天早上看了书上的一个例子,不理解其中的句子,这篇博文给我刻一些启发,让我认识了一些。第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext转载 2013-01-19 10:05:37 · 980 阅读 · 0 评论 -
Android SQLite解析
说到SQLite,无论C++、Java程序员还是其他的非主流程序员,应该都听说过它,可见其非常流行。SQLite是轻量级的、嵌入式的、关系型数据库,目前已经在iPhone、Android等手机系统中使用,而且被其他的公司广泛使用,比如说:Adobe,具体SQLite的介绍可以到其官方网站浏览。在学习Android SQLite前,必须对SQL语句有很深入的了解(如果忘记了,利用这次机会好好复习转载 2013-01-19 09:42:20 · 583 阅读 · 0 评论 -
一个android工程的运行过程
说起来惭愧至极,学习Andriod也有点久了,之前一直没怎么理解的一些问题,在这篇博文里找到了答案,与大家分享下rt首先 : 当一个工程部署到模拟环境上后,当用户点击你的应用名字“android:label="@string/app_name">”的时候,操作系统会根据配置清单文件(AndroidManifest.xml)寻找到下面的配置节点“Java代码转载 2013-01-19 09:22:33 · 509 阅读 · 0 评论 -
android-整体UI设计-(滑动导航栏+滚动页面)
要转的朋友请保留博客地址http://blog.csdn.net/swadair/article/details/7551609很多朋友对RollNavigationBar+SlidePageView如何设计业务界面感到疑惑,今天我专门写了Demo共大家参考。效果图如下:页面A页面A滑向页面B中页面B做了个简单的动态效果图实现源码如下:[java] view pla转载 2013-01-18 13:29:40 · 989 阅读 · 0 评论