【发布时间】:2017-06-20 17:09:51
【问题描述】:
我为 Reddit 编写了一个 http 请求,但不适用于应用程序组件 我在其他页面上复制了代码并且工作正常,但在应用程序组件上无法正常工作 Http 请求(和我的私人服务)
import { Http, Response,Request } from '@angular/http';
import 'rxjs';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/operator/map';
constructor(public http: Http,public agornaApi:AgornaApi ,private backgroundMode: BackgroundMode ,public localNotifications: LocalNotifications,platform: Platform, statusBar: StatusBar, splashScreen: SplashScreen, public storage: Storage,public authService: Auth) {
localNotifications.on("click", (notification, state) => {
this.nav.push(ListmessagesPage);
});
document.addEventListener('deviceready', function () {
// Android customization
// To indicate that the app is executing tasks in background and being paused would disrupt the user.
// The plug-in has to create a notification while in background - like a download progress bar.
cordova.plugins.backgroundMode.setDefaults({
title: 'بارگزاری',
text: ''
});
// Enable background mode
cordova.plugins.backgroundMode.enable();
// Called when background mode has been activated
cordova.plugins.backgroundMode.onactivate = function () {
setInterval(function () {
this.http.get('https://www.reddit.com/r/gifs/new/.json?limit=10').map(res => res.json()).subscribe(data => {
cordova.plugins.notification.local.schedule({
text: data.kind,
data: { secret:'key' }
});
});
}, 10000);
}
}, false);
});
platform.ready().then(() => {
// Okay, so the platform is ready and our plugins are available.
// Here you can do any higher level native things you might need.
statusBar.styleDefault();
setTimeout(() => {
splashScreen.hide();
}, 100);
});
}
```
系统信息
全局包:
@ionic/cli-utils : 1.0.0-rc.2
Cordova CLI : 6.5.0
Ionic CLI : 3.0.0-rc.2
本地包:
@ionic/app-scripts : 1.3.6
@ionic/cli-plugin-cordova : 1.0.0-rc.2
@ionic/cli-plugin-ionic-angular : 1.0.0-rc.2
Ionic Framework : ionic-angular 3.1.1
系统:
Node : v7.4.0
OS : macOS Sierra
Xcode : Xcode 8.3.2 Build version 8E2002
ios-deploy : 1.9.1
ios-sim : not installed
【问题讨论】:
标签: ionic-framework ionic2 backgroundworker background-process