远程访问Android媒体库的REST API

在移动设备上,尤其是Android和iOS,有许多远程访问应用程序,但它们通常缺乏供开发者使用的API来远程访问手机特性。为了填补这一空白,开发了myMobKit作为软件解决方案的一部分。

使用代码

使用myMobKit服务非常简单。一旦启动服务,可以通过访问提供的网址来查看所有暴露的REST API。这些API可以列出并流式传输手机上的媒体(图片和视频)。使用AngularJS,通过$resource服务调用REST API变得非常容易。

可以创建一个资源,返回想要的媒体列表。以下是使用AngularJS创建资源的示例代码:

<script> angular.module('resources.media', ['ngResource']); angular.module('resources.media').factory('Media', ['$rootScope', '$resource', '$location', '$http', function($rootScope, $resource, $location, $http) { var mediaServices = {}; mediaServices.getAllMedia = function(media) { var path = $rootScope.host + '/services/api/media/' + media; return $resource(path, {}, { get: { method: 'GET', isArray: false } }); }; return mediaServices; }]); </script>

利用创建的模块,可以轻松检索所有图片和视频。以下是AngularJS的控制器代码示例:

var getAllImages = function(){ Media.getAllMedia('image').get().$promise.then(function success(resp, headers) { $scope.allImages = resp; $scope.images = $scope.allImages.images; }, function err(httpResponse) { $scope.errorMsg = httpResponse.status; }); }; var getAllVideos = function(){ Media.getAllMedia('video').get().$promise.then(function success(resp, headers) { $scope.allVideos = resp; $scope.videos = $scope.allVideos.videos; }, function err(httpResponse) { $scope.errorMsg = httpResponse.status; }); };

获取到图片列表后,可以在网页浏览器中轻松展示它们。以下是HTML代码示例:

<div class="alert alert-info"> <h4 class="alert-heading">Usage - <i>Image Gallery</i></h4> <ul class="row"> <li class="col-lg-2 col-md-2 col-sm-3 col-xs-4" ng-repeat="image in images" style="margin-bottom:25px"> <img class="img-responsive" ng-click="showImage($index)" ng-src="{{streamImageLink}}?uri={{image.contentUri}}&&id={{image.id}}&kind=1"/> </li> </ul> </div>
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485