私のアプリに関するいくつかの統計を読んだ後、ユーザーの75%を更新するのに1か月以上かかることがわかりました。すべての更新は非常に重要なので、保留中の更新があることをユーザーに通知するアプリ内アラートを作成することにしました。
メソッドによって取得されるWebサーバーに保存されている実際のアプリバージョン(18)を含むテキストファイルがありますDownloadText()
。この番号は入力されisUpdatetxt
、表示できない文字から。で抽出され.substring(1, 3)
ます。つまり、基本的には「18」しか残っていません。
しかし、私の問題がありisUpdatetxt == "18"
ます。想定外の場合にfalseを返します。
private class GetUpdate extends AsyncTask<Void, Void, Void>
{
@Override
protected void onPreExecute() {
super.onPreExecute();
Toast.makeText(getApplicationContext(), "Vérification de mise à jours", Toast.LENGTH_LONG).show();
}
@Override
protected void onPostExecute(Void result) {
/** For debug reference*/
Toast.makeText(getApplicationContext(), "*" + isUpdatetxt + "*" + " " + (isUpdatetxt.length()), Toast.LENGTH_LONG).show();
if(isUpdatetxt == "18"){
alertDialog.show();
}
}
@Override
protected Void doInBackground(Void... params) {
isUpdatetxt = DownloadText(updateURL);
isUpdatetxt = isUpdatetxt.substring(1, 3);
return null;
}
}