安卓知识一向很多、很杂,只能在学习中不断积累,总结了一些基础知识,也是了解一下,真正的掌握是在运用中不断去理解、记忆。下个阶段进入实战阶段,通过每一个例子学习,不断增加成就感,才能坚持下去。
Android中的动画模式(其实还有很多)
(1)Tween:这种实现方式可以使组件移动、放大、缩小以及产生透明度的变化。
(2)Frame:传统的动画方法,通过顺序的播放排列好的电影。
导入Jar包的方法
(1)右键工程。
(2)Build Path,点击Add Library。
(3)选择user library,在出现的界面中点击new按钮,随便取一个名字。
(4)点击Add jars选择第三方Jar包,这样的话该Har包会被一起打包到apk中。
Service和Activity的交互方式
(1)通过IBinder接口实现。
(2)通过AIDL实现。
UI线程和非UI线程的交互方式
(1)Handler
(2)Activity.runOnUIThread(Runnable)
(3)View.post(Runnable)
(4)View.postDelayed(Runnable,long)。
(5)AsyncTask。
Android应用之间有几种共享数据的方法
(1)ContentProvider
(2)AIDL
(3)BroadcastReceiver
如何收集软件崩溃信息
1)Android异常捕获接口
2)设置线程捕获异常
3)实现UncaughtExceptionHandler,并重写其中的uncaughtException方法。
下拉刷新和分页加载的实现机制
(1)写好加载到ListView头部的View。
(2)重写Listiew,实现onTouchEvent和onScroll方法,监听滑动状态,计算headView全部显示出来即可实行加载动作。
(3)加载完成即刷新列表,重新隐藏headView。
Android应用程序的入口点
(1)Android应用程序提供的是入口Activity,而非入口函数。
(2)在action结点中的android.intent.action.main表明它所在的Activity是整个应用程序的入口点,而category中的android.intent.category.LAUNCHER意思是把这个Activity归属到加载器类,即把这个Activity标注为自动会加载的和启动的Activity,这样程序启动时候就先加载这个Activity了。
px,dp,sp的区别及应用场景
(1)px(像素):屏幕上的点,与密度相关,密度大了,单位面积上的px会比较多。
(2)dip或dp(与密度无关的像素):这个和设备硬件有关,一种基于屏幕密度的抽象单位,一般情况下,在不同分辨率下都不会有缩放的感觉,适合于设置View的宽和高。
(3)sp(与刻度无关的像素):放大像素,主要处理字体的大小。
Android中访问 络的方式(有很多框架可以学)
1)HttpURLConnection
2)HttpClient
3)Get和Post。
Android中实现消息推送(常用极光推送)
1)如果使客户端能够实时地收到服务器的消息和通知,总体来说有2种方法:
A)客户端使用pull的方式,就是隔一段时间就去服务器上获取一下信息,看是否有新的消息出现。
B)服务器使用push的方法,当服务器端有新信息了,则把最新的消息推送到客户端上。
2)几种常见的解决方案:
A)轮训pull:客户端定时向服务器发送询问消息,一旦服务器有变化立即同步消息。
B)持久push:客户端和服务器之间建立长久连接,这样就可以实现消息的即时性和实时性。
C)xmpp实现消息推送。
AsyncTask理解
(1)AsyncTask的特点是任务在主线程之外运行,而回调方法是在主线程中执行,这就有效避免了Handler带来的麻烦。
(2)AsyncTask提供了三种泛型类型Params、Progress和Result:
A)Params:启动任务执行的输入参数,如HTTP请求的URL。
B)Progress:后台任务执行的百分比。
C)Result:后台执行任务返回的最终结果。
(3)AsyncTask的执行分为四个步骤,每一步都对应一个回调方法:
A)onPreExcute()
此方法在主线程执行,当任务执行之前开始调用此方法。
B)doInBackground()
此方法在后台线程执行,完成任务的主要工作,通常需要较长的时间,在此期间可以调用publicProgress来更新任务的进度。
C)onProgressUpdate()
此方法在主线程执行,用于显示任务执行的进度。
D)onPostExcute()
此方法在主线程执行,任务执行的结果作为此方法的参数。
SQlite的缺点
1)事务处理并发性:SQlite通过数据库级上的独占锁和共享锁来实现独立事物处理,这意味着多个进程或现场在同一时间可以从数据库读取数据,但是只能有一个可以写入,在写入之前,必须获得独占锁,其它的读操作不允许发生。
2)在创建索引和删除表时比其它数据库慢。
用户管理、安全:数据库的访问是基于操作系统对文件的控制来控制的,不能通过用户来区分数据库中的不同数据库。
将SQLite数据库与apk文件一起发布
将.db文件复制到Eclipse工程下的res/aw目录中,所有在该目录中的文件不会压缩,这样可以直接提取该目录中的文件。
Android的常用布局
(1)线性布局:LinearLayout
(2)绝对布局:AbsoluteLayout
(3)表格式布局:TableLayout
(4)相对布局:RelativeLayout
(5)层叠布局:FrameLayout
Android的数据存储方式
(1)SharedPreference
(2)文件存储数据。
(3)SQLite数据库存储数据
(4)ContentProvider存储数据。
(5) 络存储数据。
Android运行时权限与文件系统权限的区别
Apk程序是运行在虚拟机上的,对应的是Andrid独特的权限机制,只有体现到文件系统时才使用Linux的权限设置。
系统上安装了多种浏览器,如何指定某浏览器访问指定页面strong>
通过直接发送Uri参数过去,或者通过manifest.xml里的Intent-filter的data属性。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!