java - 应用在使用解析测试推送通知时崩溃

标签 java android xml crash parse-platform

正如他们的推送通知快速入门指南中所述,我做了所有事情。但每当我尝试发送测试推送时,应用程序就会崩溃。我已经浏览了所有可能的在线帮助资源,但除了执行之外,一切似乎都是正确的。

我的主->Application.java

包-> com.virus.buzzkill;

public class BuzzKillApplication extends Application {

    @Override
    public void onCreate() {
          super.onCreate();
          Parse.initialize(this, "YhcMXhTCr65bWiI2RB4voL", "R7QWGNPMjIPh1CHTxZRXxuzgu");
          ParseInstallation.getCurrentInstallation().saveInBackground(); 

        }
}

我的AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.virus.buzzkill"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="14"
        android:targetSdkVersion="19" />

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />


    <uses-feature
        android:name="android.hardware.camera"
        android:required="true" />



    <permission
        android:name="com.virus.buzzkill.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />

    <uses-permission android:name="com.virus.buzzkill.permission.C2D_MESSAGE" />

    <application
        android:name=".BuzzKillApplication"
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".LoginActivity"
            android:label="@string/title_activity_login"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name=".SignUpActivity"
            android:label="@string/title_activity_sign_up"
            android:parentActivityName="com.virus..buzzkill.LoginActivity"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name=".EditFriendsActivity"
            android:label="@string/title_activity_edit_friends"
            android:parentActivityName=".MainActivity"
            android:screenOrientation="portrait" >
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.virus.buzzkill.MainActivity" />
        </activity>
        <activity
            android:name=".RecipientsActivity"
            android:label="@string/title_activity_recipients"
            android:parentActivityName=".MainActivity"
            android:screenOrientation="portrait" >
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.virus.buzzkill.MainActivity" />
        </activity>
        <activity
            android:name=".ViewImageActivity"
            android:label="@string/title_activity_view_image"
            android:parentActivityName=".MainActivity"
            android:screenOrientation="portrait" >
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.virus.buzzkill.MainActivity" />
        </activity>

        <service android:name="com.parse.PushService" />

        <receiver android:name="com.parse.ParseBroadcastReceiver" >
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="android.intent.action.USER_PRESENT" />
            </intent-filter>
        </receiver>
        <receiver
            android:name="com.parse.ParsePushBroadcastReceiver"
            android:exported="false" >
            <intent-filter>
                <action android:name="com.parse.push.intent.RECEIVE" />
                <action android:name="com.parse.push.intent.DELETE" />
                <action android:name="com.parse.push.intent.OPEN" />
            </intent-filter>
        </receiver>
        <receiver
            android:name="com.parse.GcmBroadcastReceiver"
            android:permission="com.google.android.c2dm.permission.SEND" >
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
                <action android:name="com.google.android.c2dm.intent.REGISTRATION" />

                <category android:name="com.virus.buzzkill" />
            </intent-filter>
        </receiver>
    </application>

</manifest>

logcat 详细信息

 10-04 20:02:08.544: W/ActivityThread(16322): Application com.virus.buzzkill can be debugged on port 8100...
    10-04 20:02:08.860: I/Adreno-EGL(16322): <qeglDrvAPI_eglInitialize:410>: EGL 1.4 QUALCOMM build: AU_LINUX_ANDROID_LNX.LA.3.5.1_RB1.04.04.02.048.018_msm8226_LNX.LA.3.5.1_RB1__release_AU ()
    10-04 20:02:08.860: I/Adreno-EGL(16322): OpenGL ES Shader Compiler Version: E031.24.00.08
    10-04 20:02:08.860: I/Adreno-EGL(16322): Build Date: 03/07/14 Fri
    10-04 20:02:08.860: I/Adreno-EGL(16322): Local Branch: 
    10-04 20:02:08.860: I/Adreno-EGL(16322): Remote Branch: quic/LNX.LA.3.5.1_RB1.1
    10-04 20:02:08.860: I/Adreno-EGL(16322): Local Patches: NONE
    10-04 20:02:08.860: I/Adreno-EGL(16322): Reconstruct Branch: AU_LINUX_ANDROID_LNX.LA.3.5.1_RB1.04.04.02.048.018 + f2fd134 +  NOTHING
    10-04 20:02:08.911: D/OpenGLRenderer(16322): Enabling debug mode 0
    10-04 20:02:08.991: D/dalvikvm(16322): GC_FOR_ALLOC freed 480K, 46% free 9407K/17184K, paused 16ms, total 16ms
    10-04 20:02:09.025: I/dalvikvm-heap(16322): Grow heap (frag case) to 23.393MB for 12767920-byte allocation
    10-04 20:02:34.759: I/Activity(16322): Pritish
    10-04 20:02:36.055: D/dalvikvm(16322): GC_FOR_ALLOC freed 1629K, 25% free 22282K/29656K, paused 21ms, total 21ms
    10-04 20:02:50.597: D/AndroidRuntime(16322): Shutting down VM
    10-04 20:02:50.597: W/dalvikvm(16322): threadid=1: thread exiting with uncaught exception (group=0x4169cd40)
    10-04 20:02:50.600: E/AndroidRuntime(16322): FATAL EXCEPTION: main
    10-04 20:02:50.600: E/AndroidRuntime(16322): Process: com.virus.buzzkill, PID: 16322
    10-04 20:02:50.600: E/AndroidRuntime(16322): java.lang.RuntimeException: Unable to start receiver com.parse.ParsePushBroadcastReceiver: java.lang.NullPointerException
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at android.app.ActivityThread.handleReceiver(ActivityThread.java:2441)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at android.app.ActivityThread.access$1700(ActivityThread.java:139)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1286)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at android.os.Handler.dispatchMessage(Handler.java:102)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at android.os.Looper.loop(Looper.java:136)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at android.app.ActivityThread.main(ActivityThread.java:5086)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at java.lang.reflect.Method.invokeNative(Native Method)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at java.lang.reflect.Method.invoke(Method.java:515)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at dalvik.system.NativeStart.main(Native Method)
    10-04 20:02:50.600: E/AndroidRuntime(16322): Caused by: java.lang.NullPointerException
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at com.parse.ParsePushBroadcastReceiver.getSmallIconId(ParsePushBroadcastReceiver.java:253)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at com.parse.ParsePushBroadcastReceiver.getNotification(ParsePushBroadcastReceiver.java:335)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at com.parse.ParsePushBroadcastReceiver.onPushReceive(ParsePushBroadcastReceiver.java:143)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at com.parse.ParsePushBroadcastReceiver.onReceive(ParsePushBroadcastReceiver.java:104)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    at android.app.ActivityThread.handleReceiver(ActivityThread.java:2434)
    10-04 20:02:50.600: E/AndroidRuntime(16322):    ... 10 more

Parse Notifications 的错误在日志的最后条目中。 请帮忙。

永远是新手。

最佳答案

在结束 </application> 之前将以下行添加到您的 AndroidManifest.xml 文件中标签:

    <meta-data android:name="com.parse.push.notification_icon" 
               android:resource="@drawable/push_icon"/>

哪里push_icon是包中可绘制资源的名称。

关于java - 应用在使用解析测试推送通知时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26193892/

相关文章:

java - 无法在 Play 项目中导入 play.db

java - 在 Java 中使用 BigIntegers 进行 BitShifting

java - Android 二进制布局膨胀异常 : ClassNotFoundException: Didn't find class "android.view.layout" on path:

xml - vbscript 创建转换带有特殊字符的 xml

java - 如何在 Java Jar 文件中包含 XML 布局文件

使用不同的 URL 进行 java servlet 测试

java - 最佳数据库迁移方法?

android - 在 android 中更改背景颜色是否会破坏小部件的外观?

android - Android 上的 DH key 对生成时间

python - 可用的最先进的纯 Python XML 解析器是什么?