自分のコードが実行されているタイプのデバイス(iPhone 4sまたはiPhone 5など)を見つけようとしています。イオスのイオン取得デバイス情報が動作しない同じコードがAndroid用に機能するのに対して
ここには、私が持っているhtmlとjsコードがあります。 これはのindex.htmlです:
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">
<title></title>
<link href="lib/ionic/css/ionic.css" rel="stylesheet">
<link href="css/style.css" rel="stylesheet">
<script src="lib/ionic/js/ionic.bundle.js"></script>
<script src="js/ng-cordova.min.js"></script>
<script src="cordova.js"></script>
<script src="js/app.js"></script>
</head>
<body ng-app="starter" ng-controller="DeviceController">
<ion-pane>
<ion-header-bar class="bar-stable">
<h1 class="title">Device Information</h1>
</ion-header-bar>
<ion-content>
<div class="item item-text-wrap">
<ul class="list">
<li class="item">
Manufacturer : {{manufacturer}}
</li>
<li class="item">
Model : {{model}}
</li>
<li class="item">
Platform : {{platform}}
</li>
<li class="item">
UUID : {{uuid}}
</li>
</ul>
</div>
</ion-content>
</ion-pane>
</body>
</html>
そして、ここでは私のapp.jsです:
angular.module('starter', ['ionic', 'ngCordova'])
.run(function($ionicPlatform) {
$ionicPlatform.ready(function() {
if (window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
}
if (window.StatusBar) {
StatusBar.styleDefault();
}
});
})
.controller('DeviceController', function($ionicPlatform, $scope, $cordovaDevice) {
$ionicPlatform.ready(function() {
$scope.$apply(function() {
var device = $cordovaDevice.getDevice();
$scope.manufacturer = device.manufacturer;
$scope.model = device.model;
$scope.platform = device.platform;
$scope.uuid = device.uuid;
});
});
});
コードは、Android上で正常に動作、およびデバイスタイプを含むすべての要求された情報を取得し、 Androidのバージョンなどですが、iPhoneでは情報が空であり、同じコードで情報が返ってくることはありません。
iosの変更が必要なことはありますか?
お返事ありがとうございます。私はそれを試して、それはAndroidのためにも動作しません。 – TJ1
申し訳ありませんが、ngCordovaの部分が欠落している可能性があります。 codeova-pluginデバイスが 'cordova plugin add cordova-plugin-device'でインストールされている場合、私の例はうまくいきます。自分のやり方で試してみましたが、ionicPlatform.readyをdocument.addEventListenerに変更してスコープを削除してください。 – thepio
はい、私はあなたが言ったことを試しました: 'あなたのやり方でそれを試しましたが、ionicPlatform.readyをdocument.addEventListenerに変更してスコープを削除してください。$ apply'を実行しましたが、再び動作しませんでした。 – TJ1