android 基础
文章平均质量分 79
emmmmsuperdan
这个作者很懒,什么都没留下…
展开
-
Android中 线程进程介绍 多线程多进程 线程通信方式 进程通信方式IPC
线程的通信方式:1.通过synchronize关键字来对多个线程进行同步,这样得到的数据会是同步的,读写也不会出问题。2.通过同步方法中的wait/notify方法来对线程进行停止唤醒某系统中有3个并发进程,都需要同类资源4 个,试问该系统不会发生死锁的最少资源数是: 10 在本题目中,当有三个并发进程同时对资源进行申请时,最可能发生死锁的情况是三个进程当...原创 2018-08-11 09:33:33 · 990 阅读 · 2 评论 -
使用selector中一些注意事项
1.selected→pressed→focused→正常 ,这是从满足条件最严格到最普通状态的递归;2.focused是一种选中状态,但是没有按下,只是光标停在了上面,获得了焦点,一般这时控件显示高亮3.有些控件若设置focused状态,那么它可能要在xml或者代码中先声明setfocusable,才能有这个效果;selected有时也是同样如此...原创 2018-07-03 08:59:38 · 333 阅读 · 0 评论 -
Android 持久化存储方式
1.SharedPreferencesSharedPreferences是一种轻量级的存储方式,通过存为键值对保存为xml文件来存放读取数据,文件路径在data/data/程序包名/share_prefs目录下,只适合存储一些简单参数配置;2.文件存储(三级缓存中的磁盘缓存)网络下载文件后,保存到文件缓存中。最好的三级缓存策略:先读取内存缓存(LruCache算法,很多框架都封装过),没有找到再查找磁盘缓存,最后没找到再请求网络;。。IO操作上述是读取内存卡中的缓存,如果读取外部..原创 2021-01-15 14:17:43 · 338 阅读 · 0 评论 -
xml布局常见问题
layout_gravity:指的是自己对于自己爸爸容器中的位置;gravity:指的是设置自己儿子的位置;因为RelativeLayout布局中默认儿子们都是左上角覆盖排布,所以其中儿子们的layout_gravity属性无法使用。但是别灰心!!还有layout_centerVertical,_centerHorizontal,_centerInParent三个属性来设置自己在爸爸容器中...原创 2019-04-11 13:01:23 · 373 阅读 · 0 评论 -
android 命名规则
1.变量,全局变量:m+小驼峰;静态变量:s+小驼峰 2.控件id: 3.布局文件资源: 4.类命名:功能+类 5. selector: 小驼峰: XX_selector、XX_drawable 等等比如button_selector,里面的集中状态有:button_normal,button_pressed等等 ...原创 2018-12-17 19:12:21 · 205 阅读 · 0 评论 -
MVC和MVP MVVM
MVC:M:model,模型(业务逻辑):进行数据库的读写等等V:view,视图(控件)等等:进行数据的显示C:controller(控件的方法(界面逻辑),给model传递参数之类);比如:你点个BUTTON,隐藏个控件,这个控件决定了model某个属性.如果隐藏这个方法是在view中写的,就是MVC,如果这个方法不是在View中写的就是MVP其中:button是view...原创 2018-08-28 14:20:43 · 801 阅读 · 1 评论 -
android IntentService
总的来说:IntentService它不像Service要手动创建线程,它会自己创建一个线程,多个任务按顺序进行,(即单线程) 在MainActivity中用startService启动而不是用bindservice,因为用bind的话,IntentService的源码默认OnBind()方法返回null,所以是不能通过OnBind方法回传值得,可以通过AIDL或者接口(同一应用); ...原创 2018-08-28 09:06:21 · 218 阅读 · 0 评论 -
Android系统结构
Android系统体系结构(采用软件叠层,降低系统5层之间的耦合性):1. 应用程序层--------就是手机上的App2.应用程序框架3.函数库-------------里面都是C/C++库,不能直接调用这些库,但是通过应用程序框架可以运行 4.Android运行时---------分为两部分1.Android核心库集,即Java语言核心库所使用的大部分功能 ...原创 2018-03-14 08:48:34 · 247 阅读 · 0 评论 -
Android项目文件目录的作用
工程目录下一般为: 1.res:存放Android项目的资源文件:layout,vlaues(string.xml,colors.xml等等) 2.src:存放Java源文件;3. AndroidMainfest.xml:它是Android项目的系统清单文件,可以设置一些App的图标,名称,权限,应用兼容的最低版本;四大组件也要在里面配置; 4.bin:用于保存生成的目...原创 2018-03-14 09:27:51 · 1350 阅读 · 0 评论 -
杂文
1.Android和Java的UI设计不同: Android:通过setcontentview(View) Java:Swing编程中的Jframe控件,这个Jframe本身就是一个布局管理器,只需要不断的往其中加控件就行 2.为什么要对App进行签名? App是以包名作为唯一标识,如果两个App的包名相同,那么安装在同一台手机上,后面安装的会把前面安装的覆盖; ...原创 2018-03-14 09:32:50 · 134 阅读 · 0 评论 -
Android AsyncTask异步任务
AsyncTask类似于Handle,它更轻量级,不需要借助线程和Handle,采用的是Thread_Pool_Executor线程池,不适合执行耗时长的任务;配置后的线程池如下:1.核心线程数等于CPU核心数+1;2.线程池的最大线程数为CPU核心数的2倍+1;3.任务队列容量为128;AsyncTask<Params,Progress,Result>是一个...原创 2018-03-17 10:36:17 · 202 阅读 · 0 评论 -
android中文本格式和二进制IO类
输入和输出流主流分两种:一种文本格式,一种二进制IO类(更复杂,但是通用,也就是说字符也能转为二进制来读写);像文本编辑器,文本输入这种的都是文本格式;读写Java输出的程序用二进制格式;(其实所有的都能用二进制来读)文本格式输入输出效率低,二进制IO类效率高但是复杂;二进制IO类有:inputstream,outputstream以及他们的子类(Bufferedinp...原创 2018-04-22 19:54:40 · 280 阅读 · 0 评论 -
回调传值 自定义Dialog中控件回调 自定义控件回调
曾经项目中用到的回调:这是一个类中的方法:只需要传入一个AppMonitorListener接口的实现类对象即可;另一个A类(调回调),另一个B类(调回调),重点看下图片中写的注释!!规定客户端拿到服务端发出的数据后做的方法,具体实现还要靠客户端去实现;服务端类(把值传出去的那个类,最终客户端调...原创 2018-06-29 14:40:46 · 847 阅读 · 0 评论