
小事杂谈
jscoolstar
这个作者很懒,什么都没留下…
展开
-
dpi densityDpi的一些理解(慎入,不一定对)
屏幕尺寸通常说的几寸屏,指手机屏幕的对角线的长度,单位是英寸。(1英寸 = 2.54厘米)比如5寸屏,5.5,6寸屏等等屏幕分辨率指屏幕的像素点数,单位是px,比如1960 * 1080.通常图片或照片这种都是像素,所以屏幕越大越可以清晰显示高清图片,否则比如手机屏幕是480* 800,但图片是2000的,那么图片放到屏幕中,就需要缩小2倍以上,即图片每2个多像素就要合并成1个(或舍弃一个?)才能展示在屏幕中,也就失真了。屏幕像素密度 dpi指每英寸上的像素点,它和dp/dip有直接关系。意为:原创 2021-08-26 11:46:32 · 1397 阅读 · 0 评论 -
一些android趣事
今天发现了一个有趣的东西,嗯,只发现了一个,先记录下来,以后遇到都记录在这里。一。android Build类中的一个注释:原创 2021-06-02 15:24:55 · 108 阅读 · 0 评论 -
签名加密的一些总结
1 base64:android中的base64 default 超过一定位数还有一堆\n出现,导致和服务器对比时不通过,改成使用Base64.NO_WRAP。原创 2021-06-02 14:33:25 · 88 阅读 · 0 评论 -
activity切换黑屏的一次经历
ActivityA启动了一个ActivityB透明页,然后启动qq授权。qq授权成功后回到ActB,ActB控制finishA且finish自己,并且启动一个新页面ActC。这个时候就you原创 2021-06-02 14:30:00 · 194 阅读 · 0 评论 -
资源覆盖
有app,lib1,lib2。如果app有app_name用app的。如果没有的话,之前并不知道会用谁的。如果app直接引入项目的方式。先导入谁就用谁的,比如先implementation lib1,就会用Lib1的。如果lib1,lib2都打包成aar,放到app libs下并使用implementation fileTree(dir: 'libs', include: ['*.aar'])引入libs下所有的aar。那么是按名字排序,谁先就用谁的。(事件经过,app下有个account的aar,同时原创 2021-04-26 16:38:13 · 173 阅读 · 0 评论 -
kotlin一些技巧记录
1。属性委托:可以直接实现Kotlin提供的两个接口ReadWriteProperty和ReadOnlyProperty来分别实现var和val属性的委托例子:class Preference<T>(private val key: String, private val defaultValue: T) : ReadWriteProperty<Any?, T> {override fun getValue(thisRef: Any?, property: K原创 2020-09-14 17:42:06 · 175 阅读 · 0 评论 -
一些小问题总结
一:mvvm模式中使用协程和线程,activity调用vm时使用listener(listener回调之前,activity finish)的情况1:协程。delay5秒调用回调。如过activity finish了。协程会直接取消,不会进行回调。如果把delay(5)改成5个delay(1),并分别打印1,2,3,4,5。会在activity finish时停留在当前delay处不再继续执行2:线程。Thread直接跑的话会触发回调。如果activity finish后,其中设置的listener原创 2020-08-24 13:57:45 · 147 阅读 · 0 评论 -
夜神host配置
之前搜到的是adb指令进行host的配置:一:提取文件,编辑,再push回去adb rootadb remountadb pull /system/etc/hostsadb push hosts /system/etc/hosts验证的指令:cat /system/etc/hosts操作方便,但是windows可能不生效,因为回车符号的缘故,需要其他软件进行编辑二:直接修改文件,使用cat指令,cat >> /../.hosts。这个指令我也不熟悉,因为当时懒得找原创 2020-08-24 10:56:19 · 636 阅读 · 0 评论 -
kotlin.罗 之必杀 room 坑之两三事
@Entity 自增长id的坑@Entitydata class User( @PrimaryKey(autoGenerate = true) var id: Int?, @ColumnInfo(name = "user_name") var userName: String? = null, var age: Int? = 0)一直用User(0)来插入数据库,会报错(如果dao里的insert 设置参数为onConflict = OnConflic原创 2020-08-18 16:14:25 · 545 阅读 · 0 评论 -
开博了
2020年,出生以来最特殊,最难忘的一年。因为今年没有回家。疫情来了。以后看博客也能想起这段时间吧。工作也因为疫情受了些影响,准备一下、沉淀一下。最近时间看了好久的源码,有些理解了,有些也只是浅尝辄止。最初的想法是回顾下常见的面试题,因为3年了,一直参与的国外的项目,都是对接google等国外软件第三方。本想准备下,但看到面试题,很多经常用到的东西却无法很准确的给出答案,其实就是理解不深了,使...原创 2020-03-07 18:41:42 · 163 阅读 · 0 评论 -
android library增加productFlavors,并在app module 引用某个flavors
library中增加productFlavors和appmodule中类似productFlavors{ buildConfigField "boolean", "ReadTestServer", "false" sdkDemoTest{ buildConfigField "boolean", "ReadTestServer", "true"原创 2017-12-15 13:40:12 · 2962 阅读 · 1 评论 -
获取屏幕真实高度
转自:http://blog.youkuaiyun.com/dacainiao007/article/details/21877717public int getScreentHeight() { int heightPixels; WindowManager w = this.getWindowManager(); Display d = w.g转载 2017-03-28 16:28:38 · 695 阅读 · 0 评论 -
使用textswitcher进行切换动画
使用textswitcher进行切换动画android:id="@+id/tsLikesCounter"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginLeft="8dp"android:layout_marginRight="8dp"原创 2017-01-12 15:10:03 · 552 阅读 · 0 评论 -
AndroidStudio导入项目一直卡在Building gradle project info
AndroidStudio导入项目一直卡在Building gradle project info,实际上是因为你导入的这个项目使用的gradle与你已经拥有的gradle版本不一致,导致需要下载该项目需要的gradle版本,不知是被墙了还是什么原因,反正就是会一直卡住,直至下载完成(如果能下载完成的话,233)网上也提供了方法,就是去官网下载gradle的版本,然后放到本地,我就不在这里转载 2017-01-11 15:03:39 · 275 阅读 · 0 评论 -
利用注解规范参数传递
今天学习design,准备看下源码,其实自己很多东西都还不会,果然随便看到什么都觉得可以学习,大家闲时也可以多看看源码,尤其是官方的,很多第三方的源码写的都没有那么的“规矩”,大多以实现功能为主。下面就步入正题吧,其实文章名称我不太知道怎么起,主要是为了实现这个目的:比如你定义了个方法,里面的参数可以传1,2,3,(比如下拉刷刷新控件,只能设置顶部刷新、底部刷新、上下都可以刷新、都不可以刷新等几个原创 2016-12-07 11:16:28 · 1319 阅读 · 0 评论