news 2026/5/1 7:17:35

把近万个源文件喂给AI之前,我先做了一件事牙

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
把近万个源文件喂给AI之前,我先做了一件事牙

插件化架构

v3 版本最大的变化是引入了模块化插件系统。此前版本中集成在核心包里的原生功能,现在被拆分成独立的插件。

每个插件都是一个独立的 Composer 包,包含 Swift 和 Kotlin 代码、权限清单以及原生依赖。开发者只需安装实际用到的插件,这些插件会在构建过程中直接编译进应用。

插件安装非常简单,通过 composer require 安装包后,在 NativeServiceProvider 中注册即可。只有注册的插件才会被编译进最终的二进制文件,这样可以保持应用体积精简,也有助于通过应用商店审核。

创建插件

插件本质上就是 Composer 包,只是多了一些额外配置。通过添加 nativephp.json 文件,开发者可以定义 PHP 类、视图文件、桥接函数、原生依赖(CocoaPods、Swift Packages、Gradle)、权限声明、JavaScript 文件等。

NativePHP 核心提供了构建钩子、生命周期钩子、服务提供者注册等机制,让插件开发体验更加顺畅。

插件可以发布到 Packagist,也可以作为项目内部代码使用,无需发布到公共仓库。这意味着应用的 Laravel 代码库可以包含构建原生应用所需的一切。

免费核心

新架构将核心包精简到最小化,应用只需包含实际使用的功能。这让应用默认就更小、更高效,也避免了应用商店审核时因包含未使用功能而被拒的问题。

NativePHP 团队将 v3 版本命名为 NativePHP Air,并将其转为 MIT 开源协议。v3 之前的版本仍然遵循原有的 Business Source License。

核心框架开源后,社区可以参与贡献,团队欢迎针对 iOS 和 Android 核心应用的 PR。

免费插件

以下插件完全免费开源(MIT 协议):

Browser - 浏览器功能

Camera - 相机调用

Device - 设备信息获取

Dialog - 原生对话框

File - 文件操作

Microphone - 麦克风调用

Network - 网络状态检测

Share - 系统分享功能

System - 系统信息

付费插件

以下功能需要单独购买插件(一次性付费,可用于无限项目):

Biometrics - 生物识别(Face ID、指纹)

Geolocation - 地理位置

Push Notifications - 推送通知(基于 Firebase)

Scanner - 扫描器

Secure Storage - 安全存储

插件市场

插件市场(Plugin Marketplace)将所有 NativePHP 插件集中展示,开发者可以发现免费和付费插件。

未来几周,市场将向第三方开发者开放,届时开发者可以在 nativephp.com 上架自己的插件,甚至可以销售自己开发的插件。例如相机滤镜插件、支付网关集成、社交登录包等。

Jump:即时设备测试

在真机上测试应用通常是一个缓慢且繁琐的过程,需要安装数 GB 的软件、模拟器和框架。而且,没有 Mac 就无法为 iPhone 构建和测试应用。

Jump 改变了这一切。

Jump 是一个安装在手机上的应用(支持 Android 和 iOS),可以在真机上测试 NativePHP 应用,无需编译任何东西,也不需要开启开发者模式。

只需运行 native:jump Artisan 命令,打开手机上的 Jump 应用扫描二维码,Laravel 应用就会直接加载到设备上,连接到本地开发服务器。

php artisan native:jump

# 或者

./native jump

NativePHP 构建速度很快,本地开发环境的改动几乎可以实时反映到设备上。未来还计划支持完整的 HMR(热模块替换)。

Jump 应用完全免费,nativephp/mobile v3 已包含运行 Jump 所需的一切。

Jump 包含所有官方 NativePHP 插件(包括付费插件),开发者可以免费试用和学习所有功能。唯一的限制是 Jump 无法测试第三方插件。

Mimi:AI 辅助编码

Mimi(取自北欧智慧之神 Mimir)是 NativePHP 提供的 AI 辅助编码功能,可以让 AI 模型帮助编写 NativePHP 应用:

直接在浏览器中创建新的 NativePHP 项目(移动端也可以)

用自然语言描述想要构建的内容,支持语音输入

直接在 Jump 中测试应用

连接 GitHub 仓库,立即获取所有应用代码

这是从想法到可运行移动应用的最快路径,完全基于 Laravel。

升级指南

如果已经安装了 nativephp/mobile,升级到 v3 的步骤如下:

从 composer.json 中移除 NativePHP 仓库(https://nativephp.composer.sh)

运行 composer remove nativephp/mobile 卸载旧版本

运行 composer require nativephp/mobile 从 Packagist 安装 v3

安装应用中使用的功能对应的插件

除了注册新插件外,应用代码基本不需要修改。安装插件后可以使用以下命令注册:

php artisan native:plugin:register vendor/plugin

# 或者

./native plugin:register vendor/plugin

快速开始

NativePHP for Mobile v3 现已发布。在手机上安装 Jump,然后在开发环境中运行以下命令:

laravel new my-mobile-app

cd my-mobile-app

composer require nativephp/mobile

php artisan native:jump

这里面有几个小坑

PHP 要求 >=8.3

在 windows 上测试,需要先安装 7-zip

我在 IOS 手机测试得,使用 php artisan native:jump 之后会弹出一个二维码,用手机上的 Jump 扫描即可。这个 Jump 目前只能在 TestFlight 上安装,打开这个安装链接即可。

很完美,至少从安装上到测试效果都很快了。效果图如下:

Laravel 现在可以零成本构建原生 iOS 和 Android 应用 NativePHP for Mobile v3 发布邻毁浪忍

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/13 6:56:05

BMP581高精度气压传感器Arduino驱动详解

1. 项目概述SparkFun BMP581 Arduino Library 是专为 Bosch 新一代高精度气压传感器 BMP581 设计的嵌入式驱动库,面向 Arduino 生态系统提供标准化、可移植、错误感知的硬件抽象层。该库并非简单封装寄存器读写,而是完整实现了 Bosch 官方 BMP5 系列传感…

作者头像 李华
网站建设 2026/4/13 15:21:47

代码规范与团队协作效率

代码规范与团队协作效率:提升开发质量的关键 在软件开发中,代码规范与团队协作效率是决定项目成败的重要因素。统一的代码规范能减少维护成本,提高可读性,而高效的团队协作则能加速交付周期,降低沟通成本。尤其在多人…

作者头像 李华
网站建设 2026/4/13 10:14:14

为什么有些开源项目把代码从JavaScript迁移到了TypeScript?

为什么有些开源项目把代码从JavaScript迁移到了TypeScript? 近年来,越来越多的开源项目开始将代码库从JavaScript迁移到TypeScript。这一趋势背后反映了开发者对代码质量、可维护性和开发效率的更高追求。TypeScript作为JavaScript的超集,不…

作者头像 李华
网站建设 2026/4/13 12:44:39

【AI原生研发链路追踪系统搭建实战指南】:20年架构师亲授5大核心组件选型、埋点规范与实时告警闭环设计

第一章:AI原生研发链路追踪系统的演进逻辑与核心价值 2026奇点智能技术大会(https://ml-summit.org) 传统分布式追踪系统(如Jaeger、Zipkin)面向微服务架构设计,其Span模型与采样策略难以刻画AI研发特有的多阶段异构性——从数据…

作者头像 李华
网站建设 2026/4/13 3:38:56

Arduino PROGMEM增强库:类型安全的Flash数据管理

1. 项目概述pgm_utils是一个专为 Arduino 平台设计的 PROGMEM 数据管理增强库,其核心目标是系统性地解决嵌入式开发中 Flash 存储资源利用效率低、API 使用繁琐、类型安全缺失等长期痛点。在资源受限的微控制器(如 ATmega328P、ESP32、STM32 等&#xff…

作者头像 李华
网站建设 2026/4/12 2:06:21

思博伦TCL并发测试避坑指南:HTTP/1.1配置与端口关联的最佳实践

思博伦TCL并发测试避坑指南:HTTP/1.1配置与端口关联的最佳实践 在性能测试领域,思博伦(Spirent)的TCL测试工具因其强大的功能和灵活性而备受推崇。然而,正是这种灵活性也带来了配置上的复杂性,特别是在HTTP…

作者头像 李华