2013-04-30 53 views
0

我正在使用持久性存儲將數據存儲在黑莓應用程序中。我試圖將電話號碼存儲在持久對象中,但在存儲後,它會給出null的值。持久對象,黑莓應用程序中的空點異常

我在這裏發佈我的代碼:

public static Vector push_data; 
public static PersistentObject push_store = null; 
public static final long KEY = 0x9df9f961bc333daL; 

boolean isNumberVerified; 
// PasswordEditField password; 

static String verifiedPhoneNumber = "number"; 
public static String phoneNumber; 
static String Number = "number"; 

public Third() { 
    super(Field.USE_ALL_HEIGHT | Field.FIELD_HCENTER); 
    System.out.println("******************** Into SplashScreen"); 

    try { 
     bitmap = Bitmap.getBitmapResource("im.png"); 
     BitmapField bmpField = new BitmapField(bitmap); 
     HorizontalFieldManager hfm = new HorizontalFieldManager(); 
     hfm.add(bmpField);` 

........

public void fieldChanged(Field field, int context) { 
     if (field == btnNext) { 
      final String msg = Util.getRandomNumber(); 
      checkIsVerified(Number, msg); 
     } 
    } 

    private void checkIsVerified(final String Number, final String msg) { 
     Dialog.alert("Verifying " + Number); 
     if (verifiedPhoneNumber == Number) { 
      isNumberVerified = true; 
      Dialog.alert("isverified " + Number); 
      push_store = PersistentStore.getPersistentObject(KEY); 
      push_data = (Vector) push_store.getContents(); 
      if(push_data == null) { 
       push_data = new Vector(); 
       push_data.addElement("number"); 
       push_store.setContents(push_data); 
       push_store.commit(); 
       Dialog.alert("isverified " + push_data); 

       UiApplication.getUiApplication().pushScreen(new spinner()); 
      } else { 
       isNumberVerified = false; 
       UiApplication.getUiApplication().pushScreen(new Sms()); 
      } 
     } 

回答

0

試試這個 -

public static String push_data=""; 
public static PersistentObject push_store; 
public static final long KEY = 0x9df9f961bc33352L; 

//For get contents 
push_store = PersistentStore.getPersistentObject(KEY); 
push_data = (String) push_store.getContents(); 

//For set contents 
push_data=Number; 
push_store.setContents(push_data); 
push_store.commit(); 
+1

在原代碼,' push_data'是'Vector','Number'是'String',所以不起作用。我假設他們想要能夠存儲一個字符串的矢量。 – Nate 2013-05-01 20:43:47

+1

@Nate我知道。但她/他沒有告訴任何有關的事情。 – Signare 2013-05-02 04:23:48

相關問題