我有一个应用程序内功能,它应该向该应用程序的所有其他用户发送消息。向所有应用程序用户发送消息
这是我用它来联系我的服务器我的Java代码:
public void sendToServer(final String text) {
new Thread(new Runnable() {
@Override
public void run() {
try {
String textParam = "text1=" + URLEncoder.encode(text, "UTF-8");
String scriptUrlString = "http://www.example.com/example.php"
URL scriptUrl = new URL(scriptUrlString);
HttpURLConnection connection = (HttpURLConnection) scriptUrl.openConnection();
connection.setDoOutput(true);
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
connection.setFixedLengthStreamingMode(textParam.getBytes().length);
OutputStreamWriter contentWriter = new OutputStreamWriter(connection.getOutputStream());
contentWriter.write(textParam);
contentWriter.flush();
contentWriter.close();
InputStream answerInputStream = connection.getInputStream();
final String answer = getTextFromInputStream(answerInputStream);
runOnUiThread(new Runnable() {
@Override
public void run() {
textView.setText(answer);
}
});
answerInputStream.close();
connection.disconnect();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}).start();
}
public String getTextFromInputStream(InputStream inputStream){
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
StringBuilder stringBuilder = new StringBuilder();
String line;
try {
while ((line = bufferedReader.readLine()) != null){
stringBuilder.append(line);
stringBuilder.append("\n");
}
} catch (IOException e) {
e.printStackTrace();
}
return stringBuilder.toString().trim();
}
在我的服务器我已经运行PHP脚本:
<?php
$text = $_POST["text1"];
$content = $_POST["inhalt"];
if($text != null){
$logfile = fopen("logfile.txt", "a");
$date = date("d.m.Y H:i:s");
fwrite($logfile, $date." Text: ".$text.$content"\n");
fclose($logfile);
}else{
echo("No Text");
}
?>
所有这些工作完全正常,我回来我发送给服务器的文本。但我想要的是将此文本发送给应用程序的所有用户。这是甚至是正确的方式,还是应该尝试一些完全不同的东西。
在此先感谢,对不起我的英文不好,我是德国人。
实施推送通知。 – Rohit5k2
我有那个imlemented,但这不是我的问题 – Dan