- 博客(13)
- 资源 (8)
- 收藏
- 关注
原创 小米手机 安卓 蓝牙 SPP 连接提示缺少android.permission.BLUETOOTH 权限问题解决
小米手机 安卓 蓝牙 SPP 连接提示缺少android.permission.BLUETOOTH 权限问题解决
2025-04-02 09:14:07
64
原创 Android国际化工具设计开发
最后一天班了!由于种种原因,今年不回家了,准备好好完善一下自己的Android国际化翻译工具,先上一张图:简介在开发过程中我们一般会将产品原型图或设计图上的文字内容(比如中文)写在默认的string.xml中,而后再通过一些手段去翻译生成不通语种的string.xml,如values-fr/string.xml、values-ja/string.xml等。那么该工具就是做这个事的,原理也很简单,就是根据匹配的语种,查找对应的其他语种并转换对应的string.xml,在转换的过程中还可以检测遗漏的翻译
2022-01-29 11:32:11
2551
1
原创 无障碍简单实现Android钉钉自动打卡
如题,既然是简单实现,所以请善待作者,看下配置界面:一句话解释:利用安卓的无障碍功能,通过文字找到组件,然后触发点击事件完事。首页代码:class MainActivity : AppCompatActivity() { private var units = arrayOf<String>() private var unitStr = "秒" private var dateStr = "" private var timeStr = ""
2020-12-05 17:34:24
3754
3
原创 记greendao主键无法自增的问题
因为greendao插入时是判断主键是否是null,是则自增,否则插入,这也是为什么主键@Id的类型要是Long类型的原因,我遇到的问题是我的实体类做了Parcelable序列化操作又因为使用了Long类型,这里就不能用writeLong,否则拆箱的时候会报空指针。查看Long的父类Number实现了Serializable,所以这里使用writeSerializable@Id(autoincrement = true)//设置自增长private Long tid;@Overridepubli
2020-12-03 13:44:51
812
原创 Android后台监听全局屏幕旋转
摸摸头~,既然是监听屏幕的旋转方向,那是不是可先去WindowManager类看看,通过对源码的一番撕扯,终于找到了一点蛛丝马迹:public int watchRotation(IRotationWatcher arg0, int arg1) throws RemoteException最终发现屏幕的旋转方向监听是在IWindowManager.aidl文件中处理的,所以我们先看看这个文件:(sdk版本:7.1.1_r28)package android.view;/*** System .
2020-12-03 12:55:56
3634
1
原创 handler是如何处理消息
在Handler机制中,我们知道Handler负责发送和处理Message,那么同一线程的Handler是如何将消息发送给对应的Handler对象去处理的呢?Let’s rtfsc!先看看Handler的使用:class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState)
2020-05-26 17:25:56
469
原创 Flutter项目实战
项目名称: 懒大厨项目已完成,下载可以直接运行看效果功能本人练手项目,菜谱类app,前期功能比较较简单,包含以下模块:用户模块:注册、登录、修改密码菜品模块:菜品制作过程展示、检索、上新、收藏技术实现Provider实现组件的状态管理,做到局部刷新自定义LoadContainer、ListContainer、SlideListContainer容器等自定义Dialog,包括LoadingDialog、自定义布局Dialog等在photo_view、image_picker
2020-05-20 11:09:45
870
原创 Toast源码解析——toast能在子线程中弹出吗
Android人知道在安卓中不能在子线程中更新ui,为什么呢?真的不能吗?先做个试验,我们在子线程中调用toast,看看有什么效果,按照上边一句话的意思,这里应该会报错显示不能再子线程中刷新ui吧val thread = object : Thread() { override fun run() { Toast.makeText(this@MainActivity, "123", Toast.LENGTH_LONG).show() }}thread.start()
2020-05-19 17:57:04
560
原创 数据共享:InheritedWidget
数据共享:InheritedWidget解释:Flutter中InheritedWidget可以实现不同子Widget(可以是不同的页面)中共享数据,依赖了同一个InheritedWidget的Widget会在InheritedWidget中数据改变的时候同步数据。原理:InheritedWidget中可以存放数据data,它的子组件使用了InheritedWidget中的data,那么这...
2020-04-13 14:52:06
1762
原创 Fluro路由框架修改支持自定义拦截条件并跳转到指定路由
Fluro是Flutter的一个很方便的路由框架。最近做一个demo,使用Fluro做路由跳转,有页面Page1,Page2,LoginPage,Page1->Page2需要先登录,也就是说没登录的时候我们需要将路由重定向到LoginPage,就这么简单的一个需求!简单实现,在跳转的时候判断是否登录,登录了就跳转到Page2,否则就是跳转到LoginPage,如下: static Fu...
2020-04-13 14:42:26
2309
原创 Flutter写一个简单的Dialog,可以自定义布局,可以设置是否可以取消,点击对话框外Dialog消失
因为需求原因,需要一个类似安卓中的Dialog,可以自行决定一些行为,比如是否可以取消,点弹窗之外是否可以取消,自定义位置,自定义内容布局等等,废话不多说直接看代码:class CustomDialog extends BaseDialog { final String title; final String msg; final Color cancelColor; final...
2020-04-13 13:29:39
1339
原创 Flutter图片裁剪
做app登陆的时候,需要用到图片裁剪功能,由于刚接触Flutter不久,所以就萌生了自己写一个的想法,说干就干!让我们站在巨人的肩膀上前进吧。flutter中图片裁剪主要采用drawImageRect(Image image, Rect src, Rect dst, Paint paint)方法来从图片上抠图,介绍如下:/// Draws the subset of the given ima...
2020-01-14 22:49:04
6930
1
原创 引入layoutlib.jar
在android studio中引入layoutlib.jardef getLayoutLibPath() { return “${android.getSdkDirectory().getAbsolutePath()}” + “/platforms/” + android.compileSdkVersion + “/data/layoutlib.jar” }android {
2016-07-25 20:14:17
1469
windows visual studio C++ 蓝牙BLE客户端(蓝牙调试工具)的完整源码和例子,可用于调试蓝牙BLE的开发
2024-04-12
世界各主要城市三字代码.pdf
2021-08-09
世界城市三字代码.xlsx
2021-08-09
世界主要城市英文简称.docx
2021-08-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人