2013-01-14 21 views
0

iOS中的單個parse.com應用程序中的不同用戶的數據如何分離?我正在編寫一個將在幾個不同的iPhone上運行的應用程序。應用程序將如何區分這些不同的設備?如何在一個Parse.com應用程序中分離不同用戶的數據?

該應用程序將有一個應用程序ID。那麼所有的數據都將存儲在該ID下?

我不是在說推送通知。我正在討論區分使用我的應用程序的用戶。如果所有用戶的數據都將存儲在我的帳戶中,那麼我將如何區分使用我的應用程序的用戶?

+0

'[[UIDevice currentDevice] uniqueIdentifier]'是一個唯一的硬件標識符。您可以使用它來區分設備,但不是用戶:/ – doge

回答

2

最簡單的方法是將用戶作爲您創建的任何分析對象的屬性。當您查詢時,您可以指定用戶身份。下面是一些示例代碼:

PFQuery *query= [PFUser query]; 

[query whereKey:@"username" equalTo:[[PFUser currentUser]username]]; 

[query getFirstObjectInBackgroundWithBlock:^(PFObject *object, NSError *error){ 
    BOOL isPrivate = [[object objectForKey:@"isPrivate"]boolValue]; 
}]; 

此外,由@Hector Ramos提到的,如果數據是敏感的,那麼你需要實現使用ACL服務器端檢查。

+0

那麼,如果他們想要使用我的應用程序,我必須要求每個用戶在parse.com上註冊嗎? – zzzzz

+0

一點也不..如果您有自己的用戶管理設置,那麼您可以使用您的userId作爲解析對象的屬性。如果你根本不想用戶管理,那麼你可以解析匿名用戶/自動用戶.. http://blog.parse.com/2012/04/02/protect-user-data-with-new-parse-features / –

-1

您不能區分這些設備。當他們訂閱特定頻道時,所有設備都將收到該頻道的通知。您無法區分設備的基本情況。你可以做一件事建立渠道A和B.根據要求將設備訂閱到頻道。那麼只有那些訂閱了頻道A或頻道B的設備纔會收到這些頻道的通知。

+0

我不是在談論推送通知。我正在討論區分使用我的應用的用戶。我想知道是否所有用戶的所有數據都將存儲在我的帳戶中,那麼我將如何區分使用我的應用程序的用戶? – zzzzz

+1

這也完全是錯誤的。 PFInstallation對象在其installationId字段中具有全局唯一標識符。此設置符合隱私標準,因爲它們在同一設備上的應用程序或同一應用程序的重新安裝之間並不相同。 –

0

當用戶註冊您的Parse應用程序時,他們會獲得自己的PFUser對象。然後,您可以使用ACLs來控制每個用戶對每個對象的訪問權限。

相關問題