移动开发

Android 开机自启动Service

1、修改AndroidManifest.xml文件 // 添加接收开机广播的权限 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> // 注册接收开机广播的receiver <receiver android:name=".BootBroadcastReceiver">

iOS界面优化

界面优化 本文主要介绍界面卡顿的原理以及优化 界面卡顿 通常来说,计算机中的显示过程是下面这样的,通过CPU、GPU、显示器协同工作来将图片显示到屏幕上 1、CPU计算好显示内容,提交至GPU 2、GPU经过渲染完成后将渲染的结果放入FrameBuffer(帧缓存区) 3、随后视频控制器会按照VSync信号逐行读取FrameBuffer的数据 4、经过可能的数模转换传递给显示器

不懂代码也能造?TRAE+GLM-4.6 手把手教你搭心理咨询智能客服小程序

目录前言一、背景:企业“提效”与 全天在线智能客服的现实需求二、直面挑战:一个“小白”的灵魂拷问三、实战演练:一步步把想法变成现实3.1 准备工作:为我的AI搭子“入魂”3.2 搭建智能“大脑”——后端服务3.2.1 技术选型与环境配置3.2.2 创建专属知识库和智能体3.2.3 GLM-4.6编写后端项目及调试3.3 打造交互“面孔”——前

Android-推荐一个任意遮罩式的引导页库(GuideView)

图片来源网络,入侵必删 在日常的Android的开发中,我们要为一个Activity或者任何一个View创建一个遮罩式的的导航提示,这里分享一个快速实现的库——GuideView。 GuideView 快速的为一个Activity里的任何一个View控件创建一个遮罩式的导航页,并且可以再高亮区域绘制任何你想要的布局或者lottie动画等炫酷效果。开源库的大佬这个库实现原理: 首先它需要

Android 10.0 截屏流程

通常未通过特殊定制的 Android 系统,截屏都是经过同时按住音量下键和电源键来截屏。本篇文章就只讨论使用这些特殊按键来进行截屏。 这里我们就要明白事件是在哪里进行分发拦截的。通过源码的分析,我们发现是在PhoneWindowManager.java 中。 PhoneWindowManager#interceptKeyBeforeQueueing() // frameworks\base\ser

iOS16适配-屏幕旋转

声明:本文适配以iOS 16 bate 2为基准 背景 iOS 16在UIKIT上有了一些更改,废弃掉了一些修改方式,比如屏幕的横竖屏旋转,这一块之前有很多中处理方法,但是如果之前用的是基于UIDevice的,那在这次更新后就会遇到强制旋转屏幕不成功,且有如下日志提示。 图1 适配前提 在iOS 16中,我们遇到了页面旋转不成功的问题,最初的代码采用如下形式 @try { if

蚂蚁百宝箱 3 分钟上手 MCP:6 步轻松构建 Qwen3 智能体应用并发布小程序

蚂蚁百宝箱 3 分钟上手 MCP:6 步轻松构建 Qwen3 智能体应用并发布小程序想象一下,一个能说 119 种语言的 AI,不仅能为你规划旅行路线、讲解异国风情,还能自然地向用户收取小费。借助 Qwen3 的强大语言理解与生成能力,结合支付宝 MCP 的支付能力,你的智能体,终于可以“收钱”了&

iOS端屏幕录制开发指南

一、 概述 实现直播过程中共享屏幕分为两个步骤:屏幕数据采集和流媒体数据推送。前对于 iOS 来说,屏幕采集需要系统的权限,受制于iOS系统的限制,第三方 app 并没有直接录制屏幕的权限,必须通过系统的功能来实现。 本文将描述iOS系统的屏幕共享的应用、实现、限制、实现细节等方面调研结果。(注:由于iOS 10和之前的系统只支持App内录制屏幕,所以只做简单的介绍,不做详细说明) 二、 应用 屏

Netty线程模型相关概念知识

点击查看 官网 点击查看NIO相关的知识 Java - NIO网络编程 一、Netty 简介 Netty是一个高性能、高可扩展性的异步事件驱动的网络应用程序框架,它极大地简化了TCP和UDP客户端和服务器开发等网络编程。 Netty重要的四个内容 Reactor线程模型:一种高性能的多线程程序设计思路 Netty中自己定义的Channel概念:增强版的通道概念 ChannelPipelin

iOS. table嵌套WKWebView 自动布局 刷新闪烁问题

先说下我这遇到的情况, tableView 刷新时候闪动、或者定位出错 1.1、tablwView预设高度 自动布局 self.tableView.estimatedRowHeight = 200; self.tableView.rowHeight = UITableViewAutomaticDimension; self.tableView.estimatedSectionHeaderHeigh