Appsを導入するアカウントが異なるため、問題が発生してアカウントが復旧しましたが、ユーザーは端末でGoogleアカウントのパスワードを更新する必要があります。したがって、新しいバージョンを導入することはできますが、デバイスにインストールすることはできません。私たちはプッシュ通知を送信するためにPHPにバックオフィスを持っているので、プッシュコンテンツの中にリンクを送りたいと思います。ユーザーがプッシュをタッチすると、私たちの企業サーバから新しいバージョンをダウンロードします。すべてのデバイスに「不明なソース」が有効になっています。
これは、我々がプッシュ送信する必要がありますコードです:あなたはこのnotificationIntent.setData(Uri.parse(「新しいバージョンをダウンロードするためのURLを」))がある場合
private function sendPushAndroid($tituloNot, $mensajeNot) {
// API access key from Google API's Console
define('API_ACCESS_KEY', 'YOU_API_KEY');
// Capturo todos los id y los meto en un array
// Intenta la inserción en la BBDD
try {
$conn = DbConfig::setUpDatabase();
$conn->setAttribute (PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$conn->beginTransaction();
$stmt = $conn->prepare ("SELECT deviceID FROM devices WHERE plataforma = 'android';");
$stmt->execute();
$result = $stmt->fetchAll();
foreach ($result as $v) {
$registrationIds = array (
$v ["deviceID"]
);
}
// var_dump($registrationIds);
// Do not delete "big_picture_url
// prep the bundle
$msg = array (
'title' => $tituloNot,
'alert' => $mensajeNot,
'json' => '{"big_picture_url": "",
"string_extra": "100000583627394",
"string_value": "value",
"string_key": "key",
"is_public": true,
"item_type_id": 4,
"numeric_extra": 0}'
); // string_extra?
$fields = array (
'registration_ids' => $registrationIds,
'data' => $msg
);
$headers = array (
'Authorization: key=' . API_ACCESS_KEY,
'Content-Type: application/json'
);
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, 'https://android.googleapis.com/gcm/send');
curl_setopt ($ch, CURLOPT_POST, true);
curl_setopt ($ch, CURLOPT_HTTPHEADER, $headers);
// curl_setopt($ch,CURLOPT_RETURNTRANSFER, true); //not needed, by default it returns true or false.
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt ($ch, CURLOPT_POSTFIELDS, json_encode ($fields));
$sent = curl_exec ($ch);
curl_close ($ch);
} catch (Exception $e) {
// echo $e->getMessage();
}
}
出典
2017-04-19 13:50:44
MIT
を。プッシュ通知からURLを設定することができます。 –
ただし、ユーザーが設定/セキュリティで「不明なソース」からのインストールを許可している場合のみ。 –
なぜ新しいバージョンを展開できないのですか?アプリを公開するために使用されたハッキングされた電子メールですか?パスワードを変更した、つまりメールを復元したということも述べましたか? – Yazan