Я пробовал push-уведомления от Parse.com в своем приложении для Android. Я также пишу PHP-файл для отправки уведомлений, и пока он хорошо работает. Теперь я хотел бы узнать, как использовать сообщение, полученное в приложении для Android, как переменную.Android - использование полученных push-уведомлений
Мой PHP-файл состоит в следующем:
<?php
$APPLICATION_ID = "xxxxx";
$REST_API_KEY = "xxxxx";
$MESSAGE = "Test 123";
$url = 'https://api.parse.com/1/push';
$data = array(
'where' => '{}',
'expiry' => 1451606400,
'data' => array(
'alert' => $MESSAGE,
),
);
$_data = json_encode($data);
$headers = array(
'X-Parse-Application-Id: ' . $APPLICATION_ID,
'X-Parse-REST-API-Key: ' . $REST_API_KEY,
'Content-Type: application/json',
'Content-Length: ' . strlen($_data),
);
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $_data);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_exec($curl);
?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
<meta charset="utf-8" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Send Push</title>
</head>
<body>
<?php if (isset($response)) {
echo '<h2>Response from Parse API</h2>';
echo '<pre>' . htmlspecialchars($response) . '</pre>';
echo '<hr>';
} elseif ($_POST) {
echo '<h2>Error!</h2>';
echo '<pre>';
var_dump($APPLICATION_ID, $REST_API_KEY, $MESSAGE);
echo '</pre>';
} ?>
<h2>Send Message to Parse API</h2>
<form id="parse" action="" method="post" accept-encoding="UTF-8">
<p>
<label for="app">APPLICATION_ID</label>
<input type="text" name="app" id="app" value="<?php echo htmlspecialchars($APPLICATION_ID); ?>">
</p>
<p>
<label for="api">REST_API_KEY</label>
<input type="text" name="api" id="api" value="<?php echo htmlspecialchars($REST_API_KEY); ?>">
</p>
<p>
<label for="api">MESSAGE</label>
<textarea name="body" id="body"><?php echo htmlspecialchars($MESSAGE); ?></textarea>
</p>
<p>
<input type="submit" value="send">
</p>
</form>
</body>
</html>
и на моем Android приложение, которое я это заявил на моей основной деятельности:
Parse.initialize(this, "xxxxx", "xxxxxx");
PushService.setDefaultPushCallback(this, MainActivity.class);
ParseInstallation.getCurrentInstallation().saveInBackground();
ParseAnalytics.trackAppOpened(getIntent());
и это на мой манифест, с правами доступа.
<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>
Так нижняя линия, которую я хочу, чтобы быть в состоянии сделать что-то вроде
btn1.setText(msg);
где msg
будет сообщение, полученное в нажимной уведомления
Спасибо за помощь, я посмотрю, смогу ли я теперь управлять :) – Ric
Мне не удалось заставить его работать. Я пробовал различный подход: http://paste2.org/mVJ1LA7C добавил эти 2 части кода к моей деятельности и php. не работает tho: \ что-то не так с моим новым кодом? – Ric
Я опубликовал некоторые изменения – cYrixmorten