随笔分类 -  Android基础

1
摘要:前言 AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各 阅读全文
posted @ 2022-02-12 13:58 契阔 阅读(25) 评论(0) 推荐(0) 编辑
摘要:1. Android为每个应用程序分配的内存大小是多少 android程序内存一般限制在16M,也有的是24M。近几年手机发展较快,一般都会分配两百兆左右,和具体机型有关。 2. 更新UI方式 Activity.runOnUiThread(Runnable) View.post(Runnable), 阅读全文
posted @ 2022-02-12 13:53 契阔 阅读(76) 评论(0) 推荐(0) 编辑
摘要:1. Android 使用 HTTPS 2. Jar和Aar的区别 Jar包里面只有代码,aar里面不光有代码还包括资源文件,比如 drawable 文件,xml资源文件。对于一些不常变动的 Android Library,我们可以直接引用 aar,加快编译速度。 3. Merge、ViewStub 阅读全文
posted @ 2022-02-12 13:51 契阔 阅读(48) 评论(0) 推荐(0) 编辑
摘要:1. android中进程的优先级? 1. 前台进程: 即与用户正在交互的Activity或者Activity用到的Service等,如果系统内存不足时前台进程是最晚被杀死的 2. 可见进程: 可以是处于暂停状态(onPause)的Activity或者绑定在其上的Service,即被用户可见,但由于 阅读全文
posted @ 2022-02-12 13:49 契阔 阅读(50) 评论(0) 推荐(0) 编辑
摘要:1. HttpClient和HttpConnection的区别? Http Client适用于web浏览器,拥有大量灵活的API,实现起来比较稳定,且其功能比较丰富,提供了很多工具,封装了http的请求头,参数,内容体,响应,还有一些高级功能,代理、COOKIE、鉴权、压缩、连接池的处理。 但是,正 阅读全文
posted @ 2022-02-12 13:22 契阔 阅读(31) 评论(0) 推荐(0) 编辑
摘要:1. Bunder传递对象为什么需要序列化?Serialzable和Parcelable的区别? 因为bundle传递数据时只支持基本数据类型,所以在传递对象时需要序列化转换成可存储或可传输的本质状态(字节流)。序列化后的对象可以在网络、IPC(比如启动另一个进程的Activity、Service和 阅读全文
posted @ 2022-02-12 13:19 契阔 阅读(216) 评论(0) 推荐(0) 编辑
摘要:1. 数据库升级增加表和删除表都不涉及数据迁移,但是修改表涉及到对原有数据进行迁移。升级的方法如下所示: 将现有表命名为临时表。 创建新表。 将临时表的数据导入新表。 删除临时表。 如果是跨版本数据库升级,可以有两种方式,如下所示: 逐级升级,确定相邻版本与现在版本的差别,V1升级到V2,V2升级到 阅读全文
posted @ 2022-02-12 13:17 契阔 阅读(32) 评论(0) 推荐(0) 编辑
摘要:一、为什么要适配 为了保证用户获得一致的用户体验效果,使得某一元素在Android不同尺寸、不同分辨率的、不同系统的手机上具备相同的显示效果,能够保持界面上的效果一致,我们需要对各种手机屏幕进行适配! Android系统碎片化:基于Google原生系统,小米定制的MIUI、魅族定制的flyme、华为 阅读全文
posted @ 2022-02-12 13:17 契阔 阅读(207) 评论(0) 推荐(0) 编辑
摘要:1.AsyncTask的缺陷和问题,说说他的原理。 AsyncTask是什么? AsyncTask是一种轻量级的异步任务类,它可以在线程池中执行后台任务,然后把执行的进度和最终结果传递给主线程并在主线程中更新UI。 AsyncTask是一个抽象的泛型类,它提供了Params、Progress和Res 阅读全文
posted @ 2022-02-12 13:16 契阔 阅读(43) 评论(0) 推荐(0) 编辑
摘要:1.动画 tween 补间动画。通过指定View的初末状态和变化方式,对View的内容完成一系列的图形变换来实现动画效果。 Alpha, Scale ,Translate, Rotate。 frame 帧动画。AnimationDrawable控制animation-list.xml布局 Prope 阅读全文
posted @ 2022-02-12 13:15 契阔 阅读(100) 评论(0) 推荐(0) 编辑
摘要:1. Canvas.save()跟Canvas.restore()的调用时机 save:用来保存Canvas的状态。save之后,可以调用Canvas的平移、放缩、旋转、错切、裁剪等操作。 restore:用来恢复Canvas之前保存的状态。防止save后对Canvas执行的操作对后续的绘制有影响。 阅读全文
posted @ 2022-02-12 13:14 契阔 阅读(82) 评论(0) 推荐(0) 编辑
摘要:1.Bitmap 使用时候注意什么? 1、要选择合适的图片规格(bitmap类型): ALPHA_8 1byte ARGB_4444 2byte ARGB_8888 4byte RGB_565 2byte 2、降低采样率。BitmapFactory.Options 参数inSampleSize的使用 阅读全文
posted @ 2022-02-12 13:09 契阔 阅读(72) 评论(0) 推荐(0) 编辑
摘要:前言 Android消息循环流程图如下所示: 主要涉及的角色如下所示: message:消息。 MessageQueue:消息队列,负责消息的存储与管理,负责管理由 Handler 发送过来的 Message。读取会自动删除消息,单链表维护,插入和删除上有优势。在其next()方法中会无限循环,不断 阅读全文
posted @ 2022-02-12 12:02 契阔 阅读(75) 评论(0) 推荐(0) 编辑
摘要:1. Fragment状态保存 Fragment状态保存入口: 1、Activity的状态保存, 在Activity的onSaveInstanceState()里, 调用了FragmentManger的saveAllState()方法, 其中会对mActive中各个Fragment的实例状态和Vie 阅读全文
posted @ 2022-02-12 11:59 契阔 阅读(38) 评论(0) 推荐(0) 编辑
摘要:1. Context 1、Activity和Service以及Application的Context是不一样的,Activity继承自ContextThemeWraper.其他的继承自ContextWrapper。 2、每一个Activity和Service以及Application的Context 阅读全文
posted @ 2022-02-12 11:58 契阔 阅读(44) 评论(0) 推荐(0) 编辑
摘要:1. 程序A能否接收到程序B的广播? 能,使用全局的BroadCastRecevier能进行跨进程通信,但是注意它只能被动接收广播。此外,LocalBroadCastRecevier只限于本进程的广播间通信。 2. 广播传输的数据是否有限制,是多少,为什么要限制? Intent在传递数据时是有大小限 阅读全文
posted @ 2022-02-12 11:57 契阔 阅读(73) 评论(0) 推荐(0) 编辑
摘要:1. ContentProvider使用方法。 进行跨进程通信,实现进程间的数据交互和共享。通过Context 中 getContentResolver() 获得实例,通过 Uri匹配进行数据的增删改查。ContentProvider使用表的形式来组织数据,无论数据的来源是什么,ConentProv 阅读全文
posted @ 2022-02-12 11:56 契阔 阅读(484) 评论(0) 推荐(0) 编辑
摘要:1. 怎么在Service中创建Dialog对话框? 1.在我们取得Dialog对象后,需给它设置类型,即: dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT) <span class="copy-code 阅读全文
posted @ 2022-02-12 11:54 契阔 阅读(165) 评论(0) 推荐(0) 编辑
摘要:1、OnLowMemory 和 OnTrimMemory 的比较 【参考】 1、OnLowMemory 被回调时,已经没有后台进程;而 onTrimMemory 被回调时,还有后台进程。 2、OnLowMemory 是在最后一个后台进程被杀时调用,一般情况是 low memory killer 杀进 阅读全文
posted @ 2022-02-12 11:51 契阔 阅读(103) 评论(0) 推荐(0) 编辑
摘要:1、Activity和Fragment生命周期有哪些? 2、横竖屏切换时候Activity的生命周期 不设置Activity的android:configChanges时,切屏会重新回调各个生命周期,切横屏时会执行一次,切竖屏时会执行两次。 设置Activity的android:configChan 阅读全文
posted @ 2022-02-12 11:31 契阔 阅读(337) 评论(0) 推荐(0) 编辑

1
点击右上角即可分享
微信分享提示