Tôi gặp sự cố trong ứng dụng, khi tôi chạy ứng dụng ở máy chủ cục bộ, hoạt động không có vấn đề và tôi có thể xem danh sách kênh nhưng khi tôi thử kiểm tra ứng dụng thiết bị vật lý nó không hiển thị bất cứ điều gì. Tôi nghĩ rằng vấn đề xuất phát từ phương pháp mà tôi đang sử dụng để gửi dữ liệu json qua http.Góc & Ionic, HTTP Không hoạt động trong thiết bị thực IOS
(function() {
'use strict';
angular.module('testApp').controller('ChannelCtrl', ['$state', 'testApi', ChannelCtrl]);
function ChannelCtrl($state, testApi) {
var vm = this;
myscreenApi.getChannels().then(function(data){
vm.channels = data;
});
vm.selectLeague = function(id){
testApi.setChannelId(id);
$state.go("app.video");
}
};
})();
và chức năng này của tôi để có được channeldata
function getChannels() {
var deferred = $q.defer(),
cacheKey = "leagues",
ChannelsData = null;
if (ChannelsData) {
console.log("Found data inside cache", ChannelsData);
deferred.resolve(ChannelsData);
$window.alert("From Cache");
} else {
$http.get("http://example.com/api/videos/getchannels")
.success(function(data) {
console.log("Received data via HTTP");
self.leaguesCache.put(cacheKey, data);
$window.alert("From HTTP");
deferred.resolve(data);
})
.error(function(dataerr) {
console.log("Error while making HTTP call.");
$window.alert("Error baba daram " + dataerr);
deferred.reject();
});
}
return deferred.promise;
}
khi tôi gửi dữ liệu với JSON.parse(), nó hoạt động đúng.
vm.channels = JSON.parse('[{"Name":"MyScreen News","ID":46,"Thumbnail":"CB46.jpg","Videos":null}]');
Tổng thể, tôi đã sử dụng API Web ASP.NET được gửi dữ liệu bằng JSON. Các ứng dụng hoạt động tốt trong máy tính để bàn của chúng tôi tuy nhiên các ứng dụng đang chạy không thể lấy dữ liệu từ máy chủ của chúng tôi. Hơn nữa, khi tôi tiêm dữ liệu trong chương trình trực tiếp nó hoạt động trong cả hai nền tảng. Ngoài tệp cấu hình ionic được trình bày bên dưới:
<content src="index.html"/>
<access origin="*"/>
<preference name="webviewbounce" value="false"/>
<preference name="UIWebViewBounce" value="false"/>
<preference name="DisallowOverscroll" value="true"/>
<preference name="BackupWebStorage" value="none"/>
<feature name="StatusBar">
<param name="ios-package" value="CDVStatusBar" onload="true"/>
</feature>
Đó là tất cả. ;)
Bạn đã thử sử dụng adb logcat để xem lỗi khi khởi chạy ứng dụng của mình chưa? – carton
có, tôi có, không có lỗi – Nima
Chắc chắn là một câu hỏi ngu ngốc nhưng bạn có kết nối internet trên thiết bị thực của mình không? (bạn gọi đây là http://example.com/api/videos/getchannels) – carton