アプリ内サブスクリプションのある Android アプリを持っています。ユーザーがサブスクリプションを購入した後、Google API によってバックエンドを介して「validUntilTimestampMsec」と「initiationTimestampMsec」をリクエストします。
返されるタイムスタンプ「initiationTimestamp」は正しく、ユーザーが購入した時間を表しますが、返されるタイムスタンプ「validUntilTimestamp」は、必要な実際の有効期限まで常に +12 時間の差があります。日付を取得するために使用する関数は、両方のタイムスタンプに似ています。
12時間はどこから来て、どのように正しい時間を得ることができますか. Google Play 内のユーザーには、有効期限も間違って表示されます。
毎月のサブスクリプションの例:
Is:
initialTimestamp: 1374433559436 (7:05pm)
validUntilTimestamp: 1377155159436 (7:05am) -> init-time + 1 か月 + 12 時間
必要:
開始タイムスタンプ: 1374433559436 (午後 7 時 5 分)
validUntilTimestamp: 1377111959 (午後 7 時 5 分) -> 初期化時間 + 12 時間を除いた 1 か月