对iOS定位授权弹窗机制的理解 一、概述 由于最近在开发跑步相关的功能,涉及到地图定位功能,因此需要申请定位权限,之前APP中有定位需要,但因之前未细致的研究授权模式的配置,导致在开发跑步功能时产生了从未遇到的异常问题。 二、遇到的问题 问题描述: 问题描述:首次安装APP,授权定位权限为WhenInUse使用期间定位定位,然后开启跑步,此时接收定位回调,将APP切入后台等待3-5秒钟后,发现定位回调不再继续回调给APP, 移动开发 2025年04月07日 83 点赞 0 评论 11585 浏览
iOS - 自定义弹窗 通过xib创建一个自定义弹窗: 该弹窗可以自定义view的背景,颜色,字体的大小,颜色调整 方便编写,调用简单: image.png LoginAlertTableView.h image.png LoginAlertTableView.m import "LoginAlertTableView.h" @interface LoginAlertTableView() @pr 移动开发 2025年04月15日 127 点赞 0 评论 11585 浏览
C++ Primer Plus习题及答案-第十二章 习题选自:C++ Primer Plus(第六版) 内容仅供参考,如有错误,欢迎指正 ! c++使用new和delete运算符来动态控制内存。 对于静态成员,要在类声明之外使用单独语句进行初始化,因为静态类成员函数是单独存储的,而不是对象的组成部分,而且初始化是在方法文件中,而不是在头文件中,这是因为类声明位于头文件中,程序可能将头文件包括在其他几个文件中,如果在头文件中初始化,将出现多个 移动开发 2024年11月21日 165 点赞 0 评论 11614 浏览
Lifecycle:生命周期感知型组件的基础 —— Jetpack 系列(1) 请点赞,你的点赞对我意义重大,满足下我的虚荣心。 🔥 Hi,我是小彭。本文已收录到 GitHub · Android-NoteBook 中。这里有 Android 进阶成长知识体系,有志同道合的朋友,跟我一起成长。 前言 生命周期是 Activity 的核心特性之一,也是 Android 视图开发无法规避的重要问题。 为了更加健壮地处理生命周期问题,Google 的解决方案是将 移动开发 2025年05月22日 156 点赞 0 评论 11703 浏览
ThreadLocal的简单理解 [TOC] 一、背景 最近有人问我ThreadLocal是如何做到在每个线程中的值都是隔离的,此处写篇文章来简单记录下。 二、ThreadLocal解决的问题 该数据属于该线程Thread自身,别的线程无法对其影响。(需要注意:需要调用ThreadLocal的remove方法) 不存在线程安全问题。(因为ThreadLocal类型的变量只有自身的线程可以访问,所以这点是成立的。) 比如: 移动开发 2025年05月22日 137 点赞 0 评论 11704 浏览
MySQL基本查询 目录Create插入替换Retrieve(读取)select(确定列)where条件(确定行)order by语句limit(分页)Update(更新)Delete(删除)截断表去重表数据聚合统计聚合函数group by句子的使用Create插入 语法: INSE 移动开发 2025年05月30日 196 点赞 0 评论 11712 浏览
Android 架构之 MVI 完全体 | 重新审视 MVVM 之殇,PartialChange & Reducer 来拯救 这是 MVI 架构的第三篇,系列文章目录如下: Android 架构之 MVI 雏形 | 响应式编程 + 单向数据流 + 唯一可信数据源 Android 架构之 MVI 初级体 | Flow 替换 LiveData 重构数据链路 Android 架构之 MVI 完全体 | 重新审视 MVVM 之殇,PartialChange & Reducer 来拯救 Android 架构之 MVI 究 移动开发 2025年05月22日 200 点赞 0 评论 11715 浏览
Android10.0 锁屏分析——KeyguardPINView PIN锁分析 学习笔记: PIN 解锁流程跟Android10.0 锁屏分析——KeyguardPatternView图案锁分析一样,这里就不过多讲解了。 在这里主要分析下 PIN 键盘的按钮事件。 1. 确认按钮 // KeyguardPinBasedInputView.java @Override protected void onFinishInflate() { // 省略部分 移动开发 2025年06月24日 73 点赞 0 评论 11723 浏览
Android 获取手机已安装的应用列表 1、扫描已安装的应用列表 var queryIntentActivities = mutableListOf<ResolveInfo>() val intent = Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_LAUNCHER) if (android.os.Build.VERSION.S 移动开发 2025年05月22日 84 点赞 0 评论 11723 浏览
基于Android的记录生活APP_springboot+vue 开发语言:Java 框架:springboot +Android JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7 数据库工具:Navicat12 开发软件:eclipse/myeclipse/idea Maven包:Maven3.6 系统展示APP 移动开发 2025年06月07日 128 点赞 0 评论 11733 浏览