移动开发

容器化 Android 开发效率:cpolar 内网穿透服务优化远程协作流程

文章目录 前言 1. 虚拟化环境检查 2. Android 模拟器部署 3. Ubuntu 安装 Cpolar 4. 配置公网地址 5. 远程访问 小结 6. 固定 Cpolar 公网地址 7. 固定地址访问 前言在移动应用开发流程中,测试环境的一致性和可访问性一直是制约团队效率的关键因素。Docker-Android 作为新兴的容器化解决方案&

【Android笔记】Android 自定义 TextView 实现垂直渐变字体颜色(支持 XML 配置)

Android 自定义 TextView 实现垂直渐变字体颜色(支持 XML 配置) 在 Android UI 设计中,字体颜色的渐变效果能让界面看起来更加精致与现代。常见的渐变有从左到右、从上到下等方向,但 Android 的 TextView 默认并不支持垂直渐变。本文将带你从原理到实现,一步步完成一个支持 上到下颜色渐变

Swift 调用 OC 实用技巧

Swift App 混入OC/C/C++代码 方法一 使用桥接文件。 方法二 使用.modulemap Swift App项目,引入OC/C/C++文件。 创建文件名必须为module 后缀为.modulemap的文件。 image.png 配置工程BuildSetting的Swift Compiler - Search Paths选项,值为module.modulemap文件

Android Framework 之 使用系统编译的文件 添加到 SDK 的源码

在上一篇文章中: Android Framework 添加新的 系统服务 我们添加了 新的 系统服务 DemoManagerService, 客户端可以通过 DemoManager.java 访问。 但是 使用 Android Studio 新建一个项目时,是不能直接使用DemoManager.java, 因为当前Android Studio使用的是Google 原生的SDK (API31),并没

iOS开发framework之Embed&Signing

当我们点击xcode工程的target时,可以看到在Build Phases一栏看到framework可选的状态有几种:Do Not Embed、Embed & Sign和Enbed Without Signing 1、Embed:嵌入,用于动态库,动态库在运行时链接,所以它们需要被打进bundle里面,如何判断呢?使用终端执行: file framework.framework/fram

安卓工程统一管理gradle变量

我们复制一个gradle文件 然后重新命名一个与项目相关的名字 image.png 打开imooc.gradle文件,重新定义一下里面的内容 ext { android = [ applicationId:'com.tencent.musicproject', compileSdkVersion: 28,

Swift枚举详解

和结构体一样,swift中的枚举也是值类型。除了定义一个或多个case成员,还可以做以下事情: 可以定义方法,计算属性,下标 可以通过mutating定义可变方法 可以扩展,遵守协议,支持范型 和结构体的唯一区别就是枚举不能定义存储属性 1. 枚举的语法: enum TextAlignment{ case left case right case center } //