gpt4 book ai didi

android - 最初使用 ServerValue.TIMESTAMP 和 Android 设置时如何从 Firebase 数据库检索本地 TIMESTAMP?

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

我使用 ServerValue.TIMESTAMP 设置添加到 Android Firebase 数据库列表中的项目的数据和时间。我知道它最初被设置为 Map 并且当我们检索它时,我们将它检索为 Long 并且为了显示日期和时间,我使用了一种方法看起来像这样:

public static String getTimeDate(long timeStamp){
try{
DateFormat dateFormat = getDateTimeInstance();
Date netDate = (new Date(timeStamp));
return dateFormat.format(netDate);
}
catch(Exception e){
return "date";
}
}

因为我距离服务器7小时,显示日期和时间的时候,是7小时前。使用 ServerValue.TIMESTAMP 时如何显示正确的日期和时间。这有可能吗?

这是我显示时间和日期的方式:

ValueEventListener listener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Map<String, Object> map = (Map<String, Object>) dataSnapshot.getValue();
Long timeStampLong = (Long) map.get("timeStamp");
String timeStamp = getTimeDate(timeStampLong);
arrayList.add(timeStamp);

arrayAdapter = new ArrayAdapter<String>(getActivity(), R.layout.list, arrayList);
listView.setAdapter(arrayAdapter);
}

@Override
public void onCancelled(DatabaseError databaseError) {}
};
ref.addListenerForSingleValueEvent(listener);

提前致谢!

最佳答案

此代码 fragment 将时间格式化为本地时区。您可以尝试以此为基础来满足您的需求。我不确定为什么您的代码不起作用。你能发布你正在使用的DateFormat吗?

    DatabaseReference timeRef = FirebaseDatabase.getInstance().getReference("time-test");

timeRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()) {
long time = dataSnapshot.getValue(Long.class);
String s = DateFormat.getDateTimeInstance().format(new Date(time));
Log.d(TAG, "onDataChange: " + s);
} else {
Log.d(TAG, "onDataChange: No data");
}
}

@Override
public void onCancelled(DatabaseError databaseError) {
throw databaseError.toException();
}
});

timeRef.setValue(ServerValue.TIMESTAMP);

关于android - 最初使用 ServerValue.TIMESTAMP 和 Android 设置时如何从 Firebase 数据库检索本地 TIMESTAMP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43141786/

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