使用插件
安装插件
插件是标准的 Composer 包。像安装任何其他 Laravel 包一样安装它们:
shell
composer require vendor/nativephp-plugin-name插件的 PHP 服务提供者将被 Laravel 自动发现,但原生代码在你明确注册之前不会包含在构建中。
注册插件
出于安全考虑,插件必须在其原生代码编译到你的应用之前明确注册。这可以防止传递依赖项在未经你同意的情况下自动包含原生代码。
首先,确保你已发布 NativeServiceProvider:
shell
php artisan vendor:publish --tag=nativephp-plugins-provider然后注册插件:
shell
php artisan native:plugin:register vendor/nativephp-plugin-name这会将插件添加到你的 app/Providers/NativeServiceProvider.php 文件中。
验证安装
检查 NativePHP 是否能看到你的插件:
shell
php artisan native:plugin:list你将看到插件名称、版本以及它提供的内容(桥接函数、事件、钩子)。
重新构建应用
安装插件后,重新构建以编译其原生代码:
shell
php artisan native:run插件的 Swift 和 Kotlin 代码会自动编译到你的应用中。
使用插件功能
每个插件都提供自己的 facade 来与原生功能交互。
php
use Vendor\PluginName\Facades\PluginName;
// 调用原生函数
$result = PluginName::doSomething(['option' => 'value']);监听插件事件
插件向你的 Livewire 组件分发事件。使用 #[OnNative] 属性来监听它们:
php
use Native\Mobile\Attributes\OnNative;
use Vendor\PluginName\Events\SomethingCompleted;
#[OnNative(SomethingCompleted::class)]
public function handleCompletion($result)
{
// 响应事件
}查看插件文档
每个插件都应该记录其可用的方法、事件和任何所需的权限。在插件的仓库中查找 README 或文档。
权限
某些插件需要额外的权限。这些在插件的清单中声明,并在构建期间自动合并到你的应用配置中。
如果插件需要相机访问、麦克风或其他敏感权限,当你运行 native:plugin:list 时会看到它们列出。
移除插件
要完全卸载插件:
shell
php artisan native:plugin:uninstall vendor/nativephp-plugin-name此命令:
- 从你的
NativeServiceProvider中注销插件 - 通过 Composer 移除包
- 从
composer.json中移除路径仓库(如果适用) - 可选地删除插件源目录(用于本地路径仓库)
使用 --force 跳过确认提示,或使用 --keep-files 在卸载本地插件时保留源目录。
官方插件和开发工具包
查找常见用例的现成插件,或获取开发工具包来构建你自己的插件。 访问 NativePHP 插件市场 →