显示从 parse.com 获取的解析通知作为弹出窗口
Posted
技术标签:
【中文标题】显示从 parse.com 获取的解析通知作为弹出窗口【英文标题】:Display parse notification getting from parse.com as pop up 【发布时间】:2014-05-27 06:01:45 【问题描述】:我想将从 parse.com 的 parse push notification 收到的消息显示为弹出消息。
目前,当我从托盘中选择通知时,它只会打开应用程序。我希望能够在弹出窗口中显示该消息。
【问题讨论】:
【参考方案1】:编写一个广播接收器来处理推送,这里是接收器..
public class MyCustomReceiver extends BroadcastReceiver
String title, time, msg;
@Override
public void onReceive(Context context, Intent intent)
Bundle extras = intent.getExtras();
String message = extras != null ? extras.getString("com.parse.Data")
: "";
Log.e("message ", " " + message);
JSONObject jObject;
try
if (message != null && !message.equals(""))
jObject = new JSONObject(message);
String msg=jObject.getString("msg");
Intent pupInt = new Intent(context, ShowPopUp.class);
Intent.FLAG_ACTIVITY_NEW_TASK );
context.getApplicationContext().startActivity(pupInt);
catch (JSONException e)
e.printStackTrace();
将此添加到您的清单中
<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.RECEIVE_BOOT_COMPLETED" />
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
<receiver android:name="your package name.MyCustomReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.USER_PRESENT" />
<action android:name="your package name.UPDATE_STATUS" />
</intent-filter>
</receiver>
你的弹出消息类...
public class ShowPopUp extends Activity implements OnClickListener
Button ok;
Button cancel;
boolean click = true;
@Override
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setTitle("Message");
setContentView(R.layout.popupdialog);
ok = (Button)findViewById(R.id.popOkB);
ok.setOnClickListener(this);
cancel = (Button)findViewById(R.id.popCancelB);
cancel.setOnClickListener(this);
@Override
public void onClick(View arg0)
// TODO Auto-generated method stub
finish();
使用此代码发送推送通知
push.setOnClickListener(new OnClickListener()
@Override
public void onClick(View v)
JSONObject obj;
try
obj = new JSONObject();
obj.put("alert", "tiltle of your push");
obj.put("action", "your package name.UPDATE_STATUS");
obj.put("msg", "push test");
ParsePush push = new ParsePush();
ParseQuery query = ParseInstallation.getQuery();
query.whereEqualTo("deviceType", "android");
push.setQuery(query);
push.setData(obj);
push.sendInBackground();
catch (JSONException e)
e.printStackTrace();
Toast.makeText(MainActivity.this, "Message Sent", 10000).show();
);
希望您的问题能得到解决....
【讨论】:
:-它不工作。没有任何错误,但没有收到通知。 我不想发送通知。我只想在来自我的解析仪表板的弹出窗口中直接接收通知。 "action": "your package name.UPDATE_STATUS", "msg": "push test","alert": "text" 从你的解析仪表板发送推送,像这种格式.. 我怎样才能从我的解析仪表板发送这个.???.这将只包括一个警报而不是一个动作或类似的消息。以上是关于显示从 parse.com 获取的解析通知作为弹出窗口的主要内容,如果未能解决你的问题,请参考以下文章
未在 android 中使用 parse.com 获取推送通知