Ionic 2应用程序每次收到推送通知时都会停止

时间:2017-08-30 12:24:30

标签: android android-manifest build.gradle firebase-cloud-messaging phonegap-pushplugin

应用程序正在获取注册号,但是当它收到推送通知时,应用程序停止并发出以下错误:

android中的

Unfortunately "APP NAME" has stopped

我正在使用phonegap-plugin-push => https://ionicframework.com/docs/native/push/

我已经在appName / platforms / android /

中添加了google-services.json

这是我的build.gradle

buildscript {
    repositories {
        mavenCentral()
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'
    }
}
dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    // SUB-PROJECT DEPENDENCIES START
    debugCompile(project(path: "CordovaLib", configuration: "debug"))
    releaseCompile(project(path: "CordovaLib", configuration: "release"))
    compile "com.google.android.gms:play-services-maps:11.+"
    compile "com.google.android.gms:play-services-location:11.+"
    compile "com.stripe:stripe-android:4.1.2"
    compile "com.android.support:support-v13:25.1.0"
    compile "me.leolin:ShortcutBadger:1.1.17@aar"
    compile "com.google.firebase:firebase-messaging:11.0.1"
}

这是我的AndroidManifest.xml

<application android:hardwareAccelerated="true" android:icon="@mipmap/icon" android:label="@string/app_name" android:supportsRtl="true">
    <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
    <activity android:exported="true" android:name="com.adobe.phonegap.push.PushHandlerActivity" android:permission="${applicationId}.permission.PushHandlerActivity" />
    <receiver android:name="com.adobe.phonegap.push.BackgroundActionButtonHandler" />
    <receiver android:name="com.adobe.phonegap.push.PushDismissedHandler" />
    <service android:name="com.adobe.phonegap.push.FCMService">
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
    </service>
    <service android:name="com.adobe.phonegap.push.PushInstanceIDListenerService">
        <intent-filter>
            <action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
        </intent-filter>
    </service>
</application>
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="25" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />

这里有谁经历过同样的事情?

1 个答案:

答案 0 :(得分:3)

我遇到了同样的问题而我正在使用离子1.我已经编辑了extension UIImage { func grayscale() -> UIImage { let filter = CIFilter(name: "CIPhotoEffectMono") // convert UIImage to CIImage and set as input let ciInput = CIImage(image: self) filter?.setValue(ciInput, forKey: "inputImage") // get output CIImage, render as CGImage first to retain proper UIImage scale let ciOutput = filter?.outputImage let ciContext = CIContext() let cgImage = ciContext.createCGImage(ciOutput!, from: (ciOutput?.extent)!) return UIImage(cgImage: cgImage!) } } 版本以匹配com.android.gms文件中的firebase-messaging版本。

platforms/android/project.properties

cordova.system.library.1=com.google.android.gms:play-services-location:11.+
cordova.system.library.6=com.google.firebase:firebase-messaging:11.+

它现在按预期工作。