我正在創建聊天應用程序,所以想要生成唯一的消息ID。 是否有可能永遠不會創建重複的消息ID。創建唯一的消息ID像什麼應用程序
0
A
回答
4
MongoDB的ObjectId是相當複雜的可能是從一個獨特的ID點好隨機性之一。 所以你可以在他們的源代碼中查看它們是如何生成它的。
離開這裏從他們的官方文檔定義爲後人:
的ObjectID小,可能獨樹一幟,迅速生成,並下令。 的ObjectId值包括12個字節,其中第一個四個字節是 時間戳反映的ObjectId的創建,特別是:蒙戈的ObjectID的
a 4-byte value representing the seconds since the Unix epoch, a 3-byte machine identifier, a 2-byte process id, and a 3-byte counter, starting with a random value.
實施例:
ObjectId("507f1f77bcf86cd799439011")
1
根據您的不良描述,您可以創建複合ID。例如,您可以使用用戶名+時間戳創建您的ide。如果你使用這個模式,你的用戶ID長度對於所有的ide都是一樣的。所以,如果實在不行,你必須加「0」 befor當前的ID來獲得平等的長度爲所有用戶的IDE
更好的說明:
String uniquemsgid= userid+ System.currentTimeMillis();
作爲事實上,你的用戶有一個唯一的ID時間戳是唯一的這個用戶。 注意:如果您僅使用時間戳或任何格式的日期,則此方法不能保證唯一的消息ID。因爲兩個用戶可以立刻創建消息
0
可能有很多方法來生成一個!一種常見的方法是生成時間戳值並將其用作唯一的ID。
例如,你可以這樣做:
public int createID(){
Date now = new Date();
int id = Integer.parseInt(new SimpleDateFormat("ddHHmmss", Locale.US).format(now));
return id; }
你也可以嘗試,並使其字符串,並將其添加任何特定的字符串格式,使之根據烏拉圭回合的應用需要更獨特!
0
你可以製作一個Random randomId= new Random(); int id = randLan.nextInt(99999) + 1;
然後你檢查是否已經給出了Id,如果是,再試一次,如果沒有,你有一個Id。
if(randomId == someOtherId),再次執行相同的過程。
0
您可能想要使用設備IMEI號碼,因爲它始終是唯一且很容易獲得的。
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
添加上述許可在您的清單文件,然後使用下面兩行,以獲得IMEI。
TelephonyManager mngr = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
long id = Long.parseLong(mngr.getDeviceId());
相關問題
- 1. 使用唯一的消息ID創建Outlook電子郵件
- 2. 如何爲IOS應用程序創建唯一ID
- 3. 用JQuery創建唯一ID
- 4. Android應用程序的唯一ID
- 5. Android - 創建一個應用程序內可伸縮消息欄
- 6. 什麼是「創建像Flip3D應用程序」的API
- 7. 創建訪客唯一ID?
- 8. VSTO Outlook 2007唯一消息ID
- 9. 使用xCode創建應用程序ID
- 10. 使用Wifi創建Android應用程序發送消息
- 11. 爲用戶提供創建唯一ID
- 12. 爲什麼Messenger應用程序在應用程序停止時接收消息?
- 13. 什麼時候應該爲應用程序中的消息創建接口請求或響應
- 14. 創建內存消耗應用程序
- 15. 驗證和創建唯一的ID
- 16. WP7:在應用程序內創建一個非網絡吐司般的消息?
- 17. 獲取另一個應用程序窗口的唯一ID
- 18. 什麼算法的Exim消息ID
- 19. Adobe AIR的:創建一個瀏覽調用的,唯一的應用程序
- 20. 在java中創建消息ID
- 21. Pylons網絡應用程序中的唯一用戶ID
- 22. 我的「消息應用程序」中的圖像消息的問題
- 23. 什麼是創建iOS應用程序的工作流程
- 24. 如何創建像pandora應用程序一樣的音頻應用程序?
- 25. 我的android應用程序的唯一ID
- 26. 如何創建一個黑莓通知消息,像twitter一樣打開應用程序呢?
- 27. Facebook應用程序範圍ID是全球唯一的嗎?
- 28. Android - 安裝應用程序時唯一的ID
- 29. 從nginx到node.js應用程序的唯一ID?
- 30. Flash Builder/AS3移動應用程序的唯一設備ID
更好地利用MongoDB的。 _id可以爲你創建一個ID。 –
[Android SMS設置唯一ID]的可能重複(http://stackoverflow.com/questions/11377730/android-sms-setting-unique-id) – mabe02