android - 无法解析 Push : (? 的所有参数,?)

标签 android push-notification ionic2

我是 Ionic2 的新手。我正在 ionic 2 上开发一个测试应用程序,其中有很多功能(短信、电话号码、图表、MySql、推送 ...)我只是按照推送通知的步骤操作。 push notification link .但是我得到一个错误,我没有得到原因。我在哪里出错

app.component.ts

   import { Component } from '@angular/core';
   import { Platform } from 'ionic-angular';
   import { StatusBar } from '@ionic-native/status-bar';
   import { SplashScreen } from '@ionic-native/splash-screen';
   import {
   Push,
   PushToken
     } from '@ionic/cloud-angular';

  import { HomePage } from '../pages/home/home';
  @Component({
  templateUrl: 'app.html',
  providers: [Push]

})
export class MyApp {
   rootPage:any = HomePage;

    constructor(platform: Platform, statusBar: StatusBar, splashScreen: 
      SplashScreen,public push:Push) {
       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();
     splashScreen.hide();
    });

   this.push.register().then((t: PushToken) => {
    return this.push.saveToken(t);
    }).then((t: PushToken) => {
    console.log('Token saved:', t.token);
    });

       this.push.rx.notification()
       .subscribe((msg) => {
       alert(msg.title + ': ' + msg.text);
      });

     }
   }

app.module.ts

 import { BrowserModule } from '@angular/platform-browser';
 import { ErrorHandler, NgModule } from '@angular/core';
 import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular';
 import { SplashScreen } from '@ionic-native/splash-screen';
 import { StatusBar } from '@ionic-native/status-bar';
 import {CallNumber} from '@ionic-native/call-number';
 import { SMS } from '@ionic-native/sms';
 import {ChartPage} from '../pages/chart/chart';
 import {CallNumberPage} from '../pages/call-number/call-number';
 import { SQLite, SQLiteObject } from '@ionic-native/sqlite';
 import { Toast } from '@ionic-native/toast';
 import { HttpModule } from '@angular/http';
 import {CloudSettings,CloudModule} from '@ionic/cloud-angular';


 import { MyApp } from './app.component';
 import { HomePage } from '../pages/home/home';
 import {CanvasPage} from '../pages/canvas/canvas';
 import {SqlitePage} from '../pages/sqlite/sqlite';
 import {MysqlPage} from '../pages/mysql/mysql';
 import {ServiceProvider} from '../providers/datamember';
 import {ListPage} from '../pages/list/list';

  const cloudSettings: CloudSettings = {
  'core': {
   'app_id': 'xxxxxxx',
 },
    'push': {
      'sender_id': 'xxxxxxxxx',
     'pluginConfig': {
      'ios': {
        'badge': true,
        'sound': true
     },
       'android': {
       'iconColor': '#343434'
       }
     }
   }
 };


   @NgModule({
    declarations: [
    MyApp,
    HomePage,
    ChartPage,
    CallNumberPage,
    CanvasPage,
    SqlitePage,
    MysqlPage,
    ListPage
   ],
   imports: [
    BrowserModule,
    HttpModule,

    IonicModule.forRoot(MyApp)
   ],
   bootstrap: [IonicApp],
   entryComponents: [
   MyApp,
   HomePage,
   ChartPage,
   CallNumberPage,
   CanvasPage,
   SqlitePage,
   MysqlPage,
   ListPage
 ],
  providers: [
    StatusBar,
    SplashScreen,
    CallNumber,
    SMS,
    SQLite,
    Toast,
    ServiceProvider,
    HttpModule,


       {provide: ErrorHandler, useClass: IonicErrorHandler}
    ]
    })
  export class AppModule {}

最佳答案

您需要设置云客户端才能使用 Push 。检查here

CloudModule 添加到导入中。

imports: [
    BrowserModule,
    HttpModule,
    CloudModule.forRoot(cloudSettings), //here
    IonicModule.forRoot(MyApp)
   ],

关于android - 无法解析 Push : (? 的所有参数,?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44129509/

相关文章:

java - 多个 Activity 的相同 Intent 过滤器

android - 在我在 android 中触摸的点上的 GestureOverlayView 中添加一个 child ?

android - 华为,logcat 没有显示我的应用程序的日志?

iphone - 如何实现天气应用的温度徽章?

Android解析sdk推送通知

javascript - 获取带有查询的项目并将项目匹配到收藏项目的用户

javascript - 使变量在回调函数外部可见 - Ionic2

typescript - "TypeError: Cannot read property ' then' of undefined

angular - ionic v3 中的自定义组件

android - 将布局 xml 文件保存在 layout-xlarge-land 文件夹中时应用程序无法启动