STM32F103通过串口2跟ESP8266相连。 1、连接阿里云aliyun物联网平台,主动上报本地数据到平台端。 2、通过MQTT协议通讯,接收平台端下发的控制指令并动作。 3、支持阿里云iot studio平台开发WEB端。 4、代码使用KEIL开发,当前在STM32F103C8T6运行,如果是STM32F103其他型号芯片,依然适用,请自行更改KEIL芯片型号以及FLASH容量即可。 5、软件下载时,请注意keil选择项是jlink还是stlink. 6、硬件设计、软件开发、数据联网:349014857@qq.com;
2024-09-29 16:57:28 6.95MB ESP8266 IOTSTUDIO 物联网云平台 手机APP
1
### Android Studio 打包与 Gradle 配置构建详解 #### 一、基本概念与流程 **Android Studio** 是 Google 推出的一款基于 IntelliJ IDEA 的 Android 应用开发集成环境。它提供了强大的功能来帮助开发者高效地开发 Android 应用。在 Android 开发过程中,打包与构建是非常重要的环节之一。 **Gradle** 是一个基于 Java 的项目自动化构建工具,它通过一种基于 Groovy 的特定领域语言(DSL) 来编写构建脚本。在 Android 开发中,Gradle 被广泛用于自动化构建过程。 #### 二、生成签名 APK 1. **生成签名文件**: - 在 Android Studio 中选择 `Build` -> `Generate Signed Bundle / APK...` - 选择 `APK` 并点击 `Next` - 创建一个新的密钥库或使用现有的密钥库 - 填写密钥库的信息,包括路径、密码等 - 完成后,你可以选择输出路径和打包类型(如 release 或 debug) 2. **选择打包类型**: - 选择 `release` 类型进行正式发布 - 选择 `debug` 类型进行测试 #### 三、Gradle 自动化打包 为了简化打包流程并提高效率,可以通过 Gradle 进行自动化打包。 1. **配置签名**: - 打开 `File` -> `Project Structure` - 选择 `app` 模块,在 `Signing` 标签下添加签名配置 - 设置 `storeFile` 为签名文件路径,`storePassword` 和 `keyPassword` 2. **添加构建类型**: - 在 `Build Types` 标签下添加 `release` 构建类型 - 选择之前设置的签名配置 3. **自动化打包**: - 选择 `Build` -> `Select Build Variant`,选择 `release` - 点击 `Build` -> `Build APK` - 构建完成后,APK 文件会出现在 `app\build\outputs\apk` 目录下 #### 四、隐藏签名文件敏感信息 为了保护签名文件中的敏感信息,可以采取以下措施: 1. **创建 keystore.properties 文件**: - 在项目根目录下创建 `keystore.properties` 文件 - 添加签名相关信息,注意不要使用单引号 2. **读取配置文件**: - 在 `build.gradle` 文件中读取 `keystore.properties` 文件 - 更新签名配置,将敏感信息替换为从配置文件中读取的信息 3. **清理 build.gradle 文件**: - 清除 build.gradle 文件中存储的敏感信息 #### 五、通过设置风味实现不同风味包的资源替换 1. **添加风味**: - 在 `Flavors` 标签下添加多种风味 - 如 `huawei`, `yingyongbao`, `baidu` 等 - 每种风味可以有不同的 SDK 版本配置 2. **设置源集**: - 为每种风味配置不同的源集,如 `src/debug/java`, `src/huawei/res` - 可以放置不同的代码、资源文件 3. **替换资源**: - 根据风味的不同,系统会自动加载相应的资源文件 - 例如,可以为不同的风味设置不同的图标 4. **应用 ID 后缀**: - 通过设置 `applicationIdSuffix` 实现不同风味的应用 ID 区分 - 例如,设置 `.debug` 作为测试包的后缀 #### 六、多渠道打包 1. **添加渠道**: - 根据实际需求添加多个渠道 - 例如,对于不同的应用市场,可能需要不同的配置 2. **配置渠道参数**: - 在 `AndroidManifest.xml` 文件中配置渠道相关的参数 - 例如,添加 `` 标签来区分不同渠道 3. **批量打包**: - 使用 Gradle 脚本进行批量打包 - 根据不同的渠道配置生成相应的 APK 文件 #### 七、总结 通过以上步骤,我们可以实现 Android 应用的高效打包与构建。不仅能够提高开发效率,还能确保应用的安全性。利用 Gradle 的自动化功能,开发者可以更加专注于应用的功能开发,而不用担心繁琐的打包流程。此外,通过设置不同的风味和渠道,可以更好地满足不同用户群体的需求,提升用户体验。
2024-09-24 14:32:27 1.44MB Android
1
**Avalonia for Visual Studio 2022 扩展包** Avalonia 是一个开源的、跨平台的用户界面框架,它允许开发者为Windows、Linux、macOS以及WebAssembly等平台创建美观的应用程序。这款扩展包是专为Visual Studio 2022设计的,旨在提升开发者的开发体验,特别是针对那些在开发过程中遇到下载速度慢问题的用户。 Avalonia 的核心特性包括: 1. **跨平台支持**:Avalonia 提供了一致的API,使得开发者可以编写一次代码,然后在多个操作系统上运行,无需进行大量的平台特定的调整。 2. **XAML支持**:如同WPF(Windows Presentation Foundation),Avalonia 使用XAML(Extensible Application Markup Language)来定义用户界面。XAML是一种声明式语言,能方便地构建UI布局和逻辑。 3. **独立于.NET框架**:尽管Avalonia最初是为.NET Core设计的,但它并不依赖特定的.NET版本,因此可以在.NET Framework、.NET Core或.NET 5/6上运行。 4. **强大的社区支持**:Avalonia有一个活跃的开发者社区,不断更新和改进框架,同时提供各种教程、文档和示例项目,帮助新用户快速上手。 Visual Studio 2022的扩展包则提供了以下功能和优势: 1. **加速开发**:安装此扩展包后,开发者可以更快地获取Avalonia相关的库和工具,减少了因网络延迟或下载速度慢而浪费的时间。 2. **集成开发环境(IDE)增强**:扩展包可能包含对Visual Studio 2022的集成优化,如模板、调试工具、代码提示和自动完成,以提高开发效率。 3. **调试和测试支持**:通过扩展,开发者可以更容易地调试Avalonia应用程序,确保其在不同平台上运行时的正确性和稳定性。 4. **资源和教程**:扩展可能提供内置的链接和资源,帮助开发者学习和理解Avalonia的最佳实践和最新特性。 文件名列表中的 `VSIXvvvrluxw.vsix`、`VSIXtz5jriar.vsix` 和 `VSIXxvvvi1qk.vsix` 是Visual Studio的扩展安装包文件,它们包含了安装该扩展所需的所有组件。这些`.vsix`文件可以直接在Visual Studio中安装,以添加Avalonia的支持和相关工具。 Avalonia for Visual Studio 2022 扩展包是一个旨在简化跨平台UI开发过程的工具,通过集成到Visual Studio 2022,它能够提高开发速度,降低网络问题对开发效率的影响,并提供丰富的开发支持,使开发者能够充分利用Avalonia框架的优势。对于那些希望在多种平台上部署应用的.NET开发者来说,这是一个非常有价值的工具。
2024-09-20 15:02:45 8.94MB visualstudio Avalonia
1
第二章 摄像测量学基本原理和算法 2.1 摄像测量常用成像模型 摄像测量是通过对摄像成像系统拍摄的图像进行分析计算,测量出被测物体在三维 空间中的几何参数和运动参数的一种测量手段。拍摄的图像是空间物体通过成像系统在 像平面上的反映,即三维空间物体在像平面上的投影。数字图像每个像素的灰度反映了 空间物体表面对应点的光强度,而该点的图像位置对应于空间物体表面的几何位置。实 际物体位置与其在图像上的位置的相互对应关系,由成像系统的几何投影模型或称成像 模型所决定,如图 2.1。成像模型是摄像测量学的 重要基础之一。各种摄像测量任务中, 都是基于成像映射关系,确定各种几何与运动参数。 图 2.1 实物到图像通过成像模型的映射关系 摄像成像过程是从三维空间向二维空间(图像)的映射。这种从高维空间向较低维 空间的映射关系就是投影。下面简要介绍几种在摄像测量中常用的投影和成像模型。 2.1.1 常用投影模型 投影时,用一组假想的直线(光线)将物体向几何表面上进行投射。该几何表面称 为投影平面,这组假想直线称为投影线(或投射线),投影平面上得到的图像也称为投影。 在摄像测量学中,按投射方式的不同,常用的投影模型主要有以下三种。 1) 中心投影 投射线会聚于一点的投影称为中心投影。如图 2.1.1(a)所示,投射线的会聚点 S 称为 投影中心,P 平面为投影面,SaA,SbB 等为投射线。A、B、C、D 为物点,a、b、c、d 称为投影点。摄像机、照相机等成像设备的成像规律近似满足中心投影。 2) 平行投影 投射线相互平行的投影称为平行投影。如图 2.1.1(b)所示,平行投影可以认为是投影 中心在无穷远处的中心投影。在平行投影中,若投影线垂直于投影平面,称这种投影为 正投影或正射投影。地形图就属于正射投影。 3) 双心投影 实体 成像 模型 图像
2024-09-15 20:59:51 4.46MB 图像测量
1
### ILITEK 触摸屏 ITS调试工具中文版——Windows-Studio-ITS-User-Guide(CHT)-v1.0.3.5 #### 一、概述 ILITEK触摸屏ITS调试工具是一款专为ILITEK触摸屏设计的专业调试与优化软件。此工具能够帮助用户实现对触摸屏各项参数的精准调试,包括但不限于传感器测试、自动调优等功能。通过使用该工具,可以显著提升触摸屏的工作性能与用户体验。 #### 二、版本历史与特性 ##### 版本历史 自2019年首次发布以来,ILITEK ITS调试工具经历了一系列的重要升级与改进: - **1.0.0.0**:首次发布,提供了基础的触摸屏调试功能。 - **1.0.0.1**:文件格式整理,更新了工具界面。 - **1.0.0.2**:增加了Tuning/AutoTuning-Scan channel/FreSpectrum的功能。 - **1.0.0.3**:传感器测试功能改进。 - **1.0.0.4**:新增按键使用说明,传感器测试界面改进。 - **1.0.0.5**:UI界面修改。 - **1.0.0.6**:新增通过WIFI与远程设备连接使用的说明。 - **1.0.0.7**:更新了Charge Curve说明,并取消了WIFI与远程设备连接功能。 - **1.0.0.8**:新增WIFI ITS连接与使用说明。 - **1.0.0.9**:新增Multi Sensor Test使用说明。 - **1.0.1.0**:新增Auto Gen.使用说明、ITS Tool UI修改、新功能说明以及Report Mode使用说明。 - **1.0.2.0**:为了触控笔项目修改了UI,重新排版了Tuning功能说明,FW upgrade UI修正,并加入了Drawing test功能说明。 - **1.0.2.1**:传感器测试界面修改,新增console tool使用说明。 - **1.0.2.2**:新增INI档说明,Sensor Test Setting UI修改,增加Sensor Test Uniformity RawData测项UI,新增FW ID/Custom ID/EDID读取功能。 - **1.0.3.0**:UI界面修改,新增C model说明。 #### 三、核心功能与使用说明 ##### 1. 传感器测试 - **功能介绍**:传感器测试是该工具的核心功能之一,它允许用户对触摸屏的传感器进行详细的检测与调试。通过对传感器的精确测量,可以帮助用户发现并解决潜在的问题。 - **操作步骤**: - 连接触摸屏设备到电脑。 - 打开ITS调试工具。 - 在传感器测试选项卡中选择相应的测试项目。 - 开始测试并根据结果调整参数。 ##### 2. 自动调优(AutoTuning) - **功能介绍**:自动调优功能能够根据触摸屏的实际工作情况自动调整相关的参数设置,从而提高触摸屏的响应速度和稳定性。 - **操作步骤**: - 选择自动调优功能。 - 根据提示进行操作。 - 完成后保存设置。 ##### 3. 绘图测试(Drawing test) - **功能介绍**:绘图测试功能用于检测触摸屏在不同压力下对绘制图形的响应能力。 - **操作步骤**: - 选择绘图测试功能。 - 在屏幕上进行绘画操作。 - 观察屏幕反馈,分析触摸屏的表现。 ##### 4. 远程连接(WIFI ITS连接) - **功能介绍**:通过WIFI ITS连接功能,可以在不直接接触的情况下实现与远程触摸屏设备的连接与调试。 - **操作步骤**: - 配置网络连接。 - 输入远程设备的IP地址。 - 建立连接后开始调试过程。 #### 四、其他高级功能 - **报告模式(Report Mode)**:生成详细的调试报告,便于后续分析。 - **FPC测试**:针对柔性电路板(FPC)的测试,确保其连接性和稳定性。 - **多传感器测试(Multi Sensor Test)**:同时测试多个传感器,提高整体效率。 - **控制台工具(Console Tool)**:提供命令行界面,支持更灵活的操作方式。 #### 五、结语 ILITEK触摸屏ITS调试工具为触摸屏的调试与优化提供了强大的支持。通过不断更新和完善,该工具已经成为行业内广泛认可的专业工具之一。无论是对于硬件工程师还是维护人员来说,掌握其使用方法都是非常有益的。希望本文的介绍能够帮助大家更好地理解和应用这一工具。
2024-09-15 09:24:29 7.5MB windows
1
2.2 二维平面摄像测量 在实际科研和工程中,许多应用对象分布在同一物平面内,测量对象的几何参数及 其运动、变化都在同一平面内,这时用单台像机就可以测量得到各种所需几何和运动参 数。根据中心透视投影模型,可以直接导出单台像机测量物平面内目标运动参数的算法。 2.2.1 单像机平面摄像测量基本原理 如图 2.1.5,如果被测物面与像机光轴垂直,即与像面平行,根据中心透视投影关系, 显然目标及其所成的像满足相似关系,只相差一个放大倍数。因此只要从图像上提取所 需目标的几何参数,乘上实际放大倍数,就得到空间物体的实际几何参数。再结合序列 图像的时间轴信息,可以得到物体的运动参数。当物体在同一平面内分布,但是此物体 平面与摄像机光轴并不垂直时,若已知光轴与物平面的夹角,可以先通过角度投影变换, 将图像校正成像面与物面平行的情况,使两者满足相似关系。 图 2.1.5 单像机平面摄像测量基本原理 常见的二维平面测量主要有物体二维几何位置、尺寸、形状、变形测量、位移和速 度的测量。其基本原理是利用单幅图像进行目标几何参数测量,或利用不同时刻在同一 角度拍摄的图像,测量图像目标的变化和运动参数。 在二维平面摄像测量中,放大倍率的确定至关重要。如果物平面内能够提供某个方 向上某对象的已知尺寸,则可以得到目标在物平面该方向上的几何或运动参数与目标成 像之间的比例关系,完成测量。 常用、简单的方法是在测量物面上放置带有绝对尺度 光心 像距 物距 物平面 像面
2024-09-06 16:09:07 4.46MB 图像测量
1
Tactical Missile Design, Second Edition “扫描版,只能找到扫描版的,还可以” This is the first textbook offered for tactical missile design in over forty years. It is oriented toward the needs of aerospace engineering students, missile engineers, and missile program managers. It is intended to provide a basis for including tactical missile design as part of the aerospace engineering curriculum, providing new graduates with the knowledge they will need in their careers. The author’s decades of experience in the development of tactical missiles and their technologies is presented in an integrated handbook method for missile design. It uses simple closed-form analytical expressions that are physics-based to provide insight into the primary driving parameters. The text also provides example calculations of rocket-powered and ramjet-powered baseline missiles, typical values of missile parameters, examples of the characteristics of current operational missiles, discussion of the enabling subsystems and technologies of tactical missiles, and the current/projected state of the art of tactical missiles. Included with the text is a CD-ROM containing electronic versions of the figures; 29 videos showing examples of design considerations, development testing, manufacturing, and technologies; 6 design case studies; configuration sizing methods; and an aerospace engineering outreach program for middle school students.
2024-08-29 11:36:32 31.18MB 战术导弹设计
1
《Sketch设计系统导出插件详解》 Sketch是一款在UI/UX设计领域广泛使用的矢量图形编辑工具,它以其简洁的界面和强大的功能深受设计师喜爱。在这个数字化设计的时代,设计系统的构建与管理变得越来越重要,它能确保产品的设计一致性、提高团队效率。"sketch-design-system-export"是一个专门针对Sketch设计系统页面的插件,它允许设计师快速、方便地导出设计系统的详细信息,并以JSON格式保存,便于进一步的数据处理和分享。 一、插件概述 "sketch-design-system-export"是一个基于JavaScript编写的Sketch插件,其主要功能是抓取Sketch设计系统页面中的元素信息,包括颜色、文本样式、符号等,然后将这些信息整理成结构化的JSON数据。通过这个插件,设计师可以轻松地将设计系统的信息集成到其他平台,如设计文档、代码库或者自动化工作流程中,从而提升设计协作的效率。 二、核心功能 1. **元素信息提取**:该插件能够识别并提取Sketch设计系统中的颜色、字体、符号等关键元素,提供全面的设计系统元数据。 2. **JSON导出**:将提取到的信息转换为JSON格式,JSON是一种通用的数据交换格式,易于阅读和编写,同时也易于机器解析和生成,方便进行后续的数据处理。 3. **设计系统共享**:JSON文件可以被分享给开发人员或其他设计师,用于实现设计与开发之间的紧密协同,确保设计意图得到准确传递。 三、使用流程 使用"sketch-design-system-export"插件的步骤简单明了: 1. **安装插件**:将下载的压缩包解压,找到sketch-design-system-export-master文件夹,将其拖入Sketch的Plugins目录。 2. **启动插件**:重启Sketch,插件将在Plugins菜单中出现,点击即可启动。 3. **选择页面**:在Sketch中选中包含设计系统信息的页面或画板。 4. **导出JSON**:执行插件命令后,系统会询问你希望保存JSON文件的位置,确认后,插件将自动完成信息提取并生成JSON文件。 四、应用场景 此插件的应用场景非常广泛,包括但不限于: - **设计文档自动生成**:将设计系统数据整合到设计规范文档,确保团队成员对设计规则有清晰了解。 - **代码生成**:结合前端框架,自动生成代码,加速开发过程。 - **版本控制**:通过比较不同版本的JSON文件,跟踪设计系统的变更历史。 - **自动化工作流**:与其他工具集成,如设计系统库或CI/CD流程,实现设计与开发的无缝对接。 总结,"sketch-design-system-export"插件为Sketch用户提供了便捷的设计系统管理和共享方式,它将设计信息转化为可操作的数据,极大地提高了设计团队的协作效率和设计系统的维护性。通过深入理解和熟练运用此插件,设计师们可以在项目中更好地实现设计标准化,推动团队向着高效、一致性的方向发展。
2024-08-28 10:53:43 6KB javascript plugin sketch sketch-plugin
1
在Android Studio中开发一个音视频播放器是一项涉及多媒体处理、用户界面设计以及数据管理的综合性任务。本项目名为"MyMusicPlayer",旨在提供一个全面的音视频播放解决方案,包括用户管理、播放控制以及多媒体资源的播放功能。下面将详细介绍这个项目中的关键知识点。 **一、用户管理** 1. **用户信息存储**:这部分涉及到数据库操作,可能使用SQLite来存储用户的基本信息,如用户名、密码、偏好设置等。 2. **用户注册与登录**:通过Android的Activity生命周期管理和Intent机制,构建注册和登录界面,实现用户信息的验证和创建新用户的功能。 3. **显示用户信息**:利用Android的UI组件(如TextView、ImageView等)展示用户信息,可能需要结合SharedPreferences来存储用户的临时状态。 **二、多媒体播放** 1. **音乐播放**:Android提供了MediaPlayer类,用于播放音频文件。需要掌握如何加载音频文件、控制播放(如暂停、播放、停止、跳转)、调整音量等。 2. **视频播放**:对于视频播放,通常使用VideoView或ExoPlayer库。ExoPlayer相比MediaPlayer有更丰富的功能和更好的性能,支持自定义解码器,适应更多格式的视频。 3. **播放列表**:设计播放列表功能,可以使用ArrayList或SQLite来存储和管理媒体文件路径,实现顺序播放、随机播放等功能。 4. **播放控制界面**:创建包含播放/暂停按钮、进度条、音量控制器的UI,通过监听MediaPlayer或ExoPlayer的事件来响应用户操作。 **三、启动效果** 启动画面通常是应用程序的第一印象,可以通过自定义启动主题、动画或者过渡效果来提升用户体验。可以使用Android的SplashScreen策略或者自定义Activity来实现。 **四、界面设计** 1. **Material Design**:遵循Android的设计规范,使用Material Design组件库(如Button、CardView、BottomNavigationView等)创建现代、直观的用户界面。 2. **布局管理**:理解并运用线性布局(LinearLayout)、相对布局(RelativeLayout)、约束布局(ConstraintLayout)等,合理安排UI元素的位置和大小。 3. **主题和样式**:通过styles.xml文件定义应用的主题和各个组件的样式,保持应用的统一视觉效果。 **五、其他技术** 1. **权限管理**:音频和视频播放可能需要访问外部存储权限,需要在AndroidManifest.xml中声明,并在运行时动态请求权限。 2. **异步处理**:为了保证用户体验,媒体加载和播放操作应放在后台进行,可以使用AsyncTask、IntentService或现代的LiveData和ViewModel架构组件。 3. **通知栏控制**:当用户离开应用时,播放状态可通过通知栏进行控制,需要了解Notification的使用。 综上,"MyMusicPlayer"项目涵盖了Android开发的多个核心领域,包括多媒体处理、用户交互、数据存储以及性能优化等,对于提升Android开发者的技术全面性有着显著的作用。在实际开发过程中,还需要不断调试和优化,以确保应用的稳定性和用户体验。
2024-08-27 11:24:26 134.02MB android android studio
1
《单词连连看 2023 版 for Lixm Studio》是一款专为英语学习者设计的游戏化软件,它巧妙地结合了经典游戏“连连看”的玩法与英语单词的学习,旨在帮助用户在轻松愉快的环境中巩固和提升词汇量。这款软件的独特之处在于,它将娱乐与教育融为一体,使学习不再枯燥乏味,而成为一种享受。 我们来关注一下这个软件的核心功能。在“单词连连看”中,用户可以看到由各种英语单词组成的关卡,每个单词都对应着游戏中的一对匹配项。玩家需要在限定时间内找到并消除所有匹配的单词,从而完成关卡。这种互动式的玩法不仅刺激了用户的视觉和反应能力,还通过反复识别和拼写单词,加深了用户对单词的记忆。 在技术实现上,压缩包中的文件揭示了一些关键组件。例如,"dcllk-r2-t4-final.exe"很可能是该软件的主执行程序,负责运行游戏的逻辑和界面。"msttsv22L.exe"和"msttsf22L.exe"可能涉及到Microsoft Text To Speech (TTS) 技术,这使得软件能够以语音形式朗读单词,提供听觉反馈,进一步增强用户的听力和发音技能。"spchapi.exe"可能与微软的语音识别API相关,允许软件理解用户的语音输入,增加了游戏的互动性。"readme.txt"通常包含软件的安装指南、许可协议和其他重要信息,是了解软件使用前必须阅读的重要文档。 此外,我们可以推测该软件可能具备以下特性:适应不同水平的用户,通过设置不同的难度等级和单词库;提供学习报告,让学习者了解自己的进步;支持自定义单词列表,以便用户专注于特定领域或考试所需的词汇;可能还有成就系统和排行榜,激发用户的竞争意识和学习动力。 在生活娱乐方面,"单词连连看 2023 版 for Lixm Studio"不仅适合学生群体,也适用于忙碌的职场人士,它可以在工作间隙提供短暂的放松和学习机会。同时,家庭用户也可以将其作为亲子互动的工具,共同提升英语水平。 "单词连连看 2023 版 for Lixm Studio"是一款创新且实用的英语学习软件,它利用游戏化学习策略,使单词记忆变得既有趣又高效。通过结合现代技术如TTS和语音识别,软件提升了用户体验,使其成为学习英语的有效辅助工具。
2024-08-25 08:01:40 11.63MB
1