0

ではAndroid、現地時間を簡単に取得するための API がないようです。ネットを掘り下げると、クラスUTCを使用して時間からのオフセットを計算するコードが見つかりました。TimeZone

final long timestamp = System.currentTimeMillis();
int offset = TimeZone.getDefault().getOffset(timestamp);
if (TimeZone.getDefault().inDaylightTime(Calendar.getInstance().getTime())) {
    offset = offset - TimeZone.getDefault().getDSTSavings();
}

さて、このコードは私が必要としているもののほとんどですが、式が間違っていることがすぐに明らかになります。たとえばCET、オフセットは 3600000 になりCESTますが、0 になります。これは間違っています (7200000 のはずです)。

明らかに、減算の代わりに加算を使用するようにコードにパッチを当てることができますが、元の作成者が減算が必要であると明示的に述べているため、これが安全かどうかはわかりません (私はそれが のためだったと思いますPST)。

数式をすべてのタイム ゾーンで機能させるにはどうすればよいですか?

4

0 に答える 0