gpt4 book ai didi

android - 从远程服务器下载 APK。推送通知链接

转载 作者:行者123 更新时间:2023-11-30 00:35:37 26 4
gpt4 key购买 nike

我们已经用一个 Google 帐户配置了许多设备(超过 200 台)。两周前,这个帐户被黑了,我们不得不更改密码。

现在,为了解决这个问题,我们需要一个不要求用户更改密码的替代方案。 (很多用户都是基础用户,不知道怎么改)。

一个可能的替代方案是:

所有设备都有我们开发的具有“推送通知”功能的相同应用程序。

是否可以发送带有 URL 链接的通知,以从我公司的服务器下载应用程序的新版本?我看到了一个包含“click_url”参数的选项,但它需要在 AndroidManifest.xml 上实现自定义过滤器操作

这种替代方案需要在设备上安装的应用程序才能实现,而不是新版本的应用程序,因为我们没有任何方法来部署新版本的应用程序。

提前致谢。最好的问候。

最佳答案

部署应用程序的帐户不同,所以问题和我们已经恢复了帐户,但用户必须在他们的设备上更新 Google 帐户密码。所以,我们可以部署一个新版本,但它不能安装在设备上。我们有一个 PHP 后台,用于发送推送通知,所以我们想在推送内容中发送一个链接,如果用户触摸推送,它将从我们的公司服务器下载一个新版本。所有设备都启用了“未知来源”。

这是我们必须发送推送的代码:

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();
}
}

关于android - 从远程服务器下载 APK。推送通知链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43465475/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com