2011-12-30 15 views
0

私は現在、ブラックベリーの永続ストアを使用して情報を保存しています。私はユーザーレベルのアクセスに応じて詳細を保存する必要があります。ブラックベリーの永続ストア+ユーザーレベルのアクセス

シナリオ:ユーザー1がログインし、いくつかの詳細を永続ストアに保存してから、ユーザー2をログインしました。ユーザー1によって保存されたデータは、ユーザー2で使用できません。どうすればいいのか教えてください。

私は以下のコードを使用しています。

try {  
    store = PersistentStore.getPersistentObject(key); 
    CodeSigningKey codeSigningKey = CodeSigningKey.get("ACME"); 
     synchronized (store) { 
     objectsList = new Vector(); 
     store.setContents(new ControlledAccess(objectsList,codeSigningKey)); 
     store.commit(); 
     } 
    } catch (Exception e) { 
     Dialog.inform(e.toString()); 
} 
+0

あるキー

としてユーザー名を使用することにより、ユーザごとに異なる永続ストアを作成することができます問題。 –

+0

Neelは "私はBB 4.5で実装しようとしています"という答えにコメントしていますので、SQLiteは利用できません。 –

答えて

2

あなたはそう何をやるべきことは、私はあなたがこれを処理するためのSQLiteデータベースが必要だと思う以下

try { 

String username="joe"; 
String key =StringUtilities.stringHashToLong (username); 
store = PersistentStore.getPersistentObject(key); 

CodeSigningKey codeSigningKey = CodeSigningKey.get("ACME"); 

synchronized (store) { 
    objectsList = new Vector(); 
    store.setContents(new ControlledAccess(objectsList, codeSigningKey)); 
    store.commit(); 
} 
} catch (Exception e) { 
Dialog.inform(e.toString()); 
} 
+0

Mr. rfsk2010:1000人以上のユーザーがいる場合は、Neel氏が1000+の永続ストアを作成する必要があります。 –

+1

私はモバイル機器が1000sにもかかわらず、少数のユーザでも使用されることを非常に疑っています。 1000人のユーザーで作業しなくても、1000人のユーザーのレコードを持つ単一の永続ストアを持つよりも優れています。永続ストアのエントリにはサイズの制限があることに注意してください。 – rfsk2010

+0

質問が1つしかありません。 (1+永続ストア)または(SQLiteデータベース)を使用する方が良いですか? –