2015-11-19 45 views
0

我想在我的Ionic項目中實現一個通用的cordova插件(目前無法通過ngCordova獲得)。Ionic:Impelement Diagnostic Plugin(no ngCordova Plugin)

我已經通過CLI

安裝該插件
cordova plugin add cordova.plugins.diagnostic 

之後,我注入到我的模塊:

var app = angular.module('app', ['ionic', 'ngCordova', 'ionic.contrib.ui.tinderCards', 'Diagnostic']) 

然後我創建了一個工廠:

.factory('LocationSettings', ['$q', 'Diagnostic', function($q, Diagnostic) { 
    return { 
    getLocationSettings: function(options) { 
     var q = $q.defer(); 
     Diagnostic.isLocationEnabled(function(result) { 
     console.log("Location is " + (result ? "enabled" : "disabled")); 
     q.resolve(result); 
     }, function(err) { 
     console.error("The following error occurred: "+err); 
     q.reject(err); 
     }, options); 

     return q.promise; 
    } 
    } 
}]) 

後我想要將用戶重定向到位置設置,如果他禁用了應用程序的GPS權限。

.run(function ($ionicPlatform, $state, LocationSettings) { 
    LocationSettings.getLocationSettings().then(function(result) { 
     alert(result); 
    }, function(err) { 
     alert(err); 
    }); 
} 

我在我的真實設備(iPhone)上測試過它,但它不起作用。其實它不會拋出錯誤,我只是得到一個空白的白屏。 我在做什麼錯?

回答

1

從我在GitHub README中可以看到的,沒有Angular模塊可用於注入。

你需要安裝插件(你做過),然後直接以「純javascript方式」(不採用Angular方式)來使用它。

它位於命名空間cordova.plugins.diagnostic

相關問題