ride / app-media
为Ride应用程序集成的媒体库。
1.0.0
2016-10-14 09:23 UTC
Requires
- ride/app: ^1.0.0
- ride/app-validation: ^1.0.0
- ride/lib-dependency: ^1.0.0
- ride/lib-media: ^1.0.0
- ride/lib-validation: ^1.0.0
This package is auto-updated.
Last update: 2024-09-12 23:08:15 UTC
README
这是Ride应用层中ride/lib-media
的实现。
DependencyMediaFactory
是主要接口,它执行与ride\library\media\SimpleMediaFactory
相同的功能,除了使用媒体项目工厂上注册的依赖项。有关更多信息,请参阅ride/lib-media
的README。
参数
- google.api.key:与Google相关API调用(YouTube、Geocode等)的API密钥
代码参考
您可以在createMediaItem
方法中手动添加媒体项目工厂,也可以将它们作为依赖项添加,这些依赖项可以是简单的依赖项,例如对于VimeoMediaItemFactory
// ride/app-media/config/dependencies.json { "dependencies": [ // ... { "interfaces": "ride\\library\\media\\factory\\MediaItemFactory", "class": "ride\\library\\media\\factory\\VimeoMediaItemFactory", "id": "vimeo" } // ... ] }
或者您还可以添加clientId参数,例如对于YoutubeMediaItemFactory
// ride/app-media/config/dependencies.json { "dependencies": [ // ... { "interfaces": "ride\\library\\media\\factory\\MediaItemFactory", "class": "ride\\library\\media\\factory\\YoutubeMediaItemFactory", "id": "youtube", "calls": [ { "method": "setClientId", "arguments": [ { "name": "clientId", "type": "parameter", "properties": { "key": "google.api.key" } } ] } ] } // ... ] }
代码示例
<?php use ride\application\media\DependencyMediaFactory; use ride\library\dependency\DependencyInjector; function testMediaFactory(DependencyInjector $dependencyInjector) { $dependencyMediaFactory = new DependencyMediaFactory($dependencyInjector); // create a MediaItem (eg. Vimeo) $vimeoMediaItem = $dependencyMediaFactory->createMediaItem('https://vimeo.com/130848841'); // create a MediaItem which depends on a clientId, but is injected via the DependencyInjector (eg. Youtube) $youtubeMediaItem = $dependencyMediaFactory->createMediaItem('https://www.youtube.com/watch?v=njos57IJf-0'); // ``` }
相关模块
- ride/app
- ride/app-orm-asset
- ride/app-validation
- ride/lib-dependency
- ride/lib-media
- ride/lib-validation
安装
您可以使用Composer安装此模块。
composer require ride/app-media