Parse platform Android活动不是';t从解析通知开始
我在Android上解析通知时遇到了一个奇怪的问题 它仅在应用程序未运行、收到通知并启动应用程序的情况下发生。第一个通知将正确启动默认推送回调活动,但是任何后续通知都不会启动该活动!这使得通知无法检测 当应用程序从它的图标启动时,回调活动被正确启动,我看到onCreate函数被调用。但是,如果从图标启动,则会失败 我已正确添加了所有权限和应用程序清单添加内容。我指定了以下类作为初始化解析API并设置回调的应用程序Parse platform Android活动不是';t从解析通知开始,parse-platform,push,android-notifications,Parse Platform,Push,Android Notifications,我在Android上解析通知时遇到了一个奇怪的问题 它仅在应用程序未运行、收到通知并启动应用程序的情况下发生。第一个通知将正确启动默认推送回调活动,但是任何后续通知都不会启动该活动!这使得通知无法检测 当应用程序从它的图标启动时,回调活动被正确启动,我看到onCreate函数被调用。但是,如果从图标启动,则会失败 我已正确添加了所有权限和应用程序清单添加内容。我指定了以下类作为初始化解析API并设置回调的应用程序 package com.distriqt.example.test; impor
package com.distriqt.example.test;
import android.app.Application;
import com.parse.Parse;
import com.parse.ParseInstallation;
import com.parse.PushService;
public class MainApplication extends Application
{
public static String PARSE_APPLICATION_ID = "XXXX";
public static String PARSE_CLIENT_KEY = "YYYY";
@Override
public void onCreate()
{
super.onCreate();
Parse.setLogLevel( Parse.LOG_LEVEL_DEBUG );
Parse.initialize( this, PARSE_APPLICATION_ID, PARSE_CLIENT_KEY );
PushService.setDefaultPushCallback( this, ParseCallbackActivity.class );
ParseInstallation.getCurrentInstallation().saveInBackground();
}
}
我的回调活动如下所示。我基本上开始了主程序包活动,在立即完成活动之前,我在这里对通知进行了一些处理
package com.distriqt.example.test;
import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.util.Log;
public class ParseCallbackActivity extends Activity
{
public static String TAG = ParseCallbackActivity.class.getSimpleName();
@Override
public void onCreate( Bundle savedInstanceState )
{
super.onCreate( savedInstanceState );
Log.d( TAG, "onCreate()" );
PackageManager pm = getPackageManager();
Intent mainAppIntent = pm.getLaunchIntentForPackage( getPackageName() );
mainAppIntent.putExtras( getIntent().getExtras() );
mainAppIntent.addFlags( Intent.FLAG_ACTIVITY_REORDER_TO_FRONT );
startActivity( mainAppIntent );
printIntent( getIntent() );
finish();
}
public static void printIntent( Intent intent )
{
try
{
Log.d( TAG, "action = " + intent.getAction() );
if (intent.getExtras() != null)
{
String channel = intent.getExtras().getString("com.parse.Channel");
JSONObject json = new JSONObject(intent.getExtras().getString("com.parse.Data"));
Log.d( TAG, "==============================================");
Log.d( TAG, String.format( "channel: %s", channel ));
Log.d( TAG, String.format( "json: %s", json ));
Log.d( TAG, "==============================================");
}
}
catch (Exception e)
{
}
}
}
MainActivity目前只不过是一个示例布局。我不知所措…您在AndroidManifest.xml中声明了活动通知吗