0
  1. リスト項目

    sql lite データベースを使用するアプリケーションを開発しました。これはシミュレーターで正しく実行されています。しかし、Blackberry Curve 8520 モバイルにアプリケーションをデプロイすると、. データベースが存在しないことを教えてください。どなたか分かる方回答お願いします...

私のコードは ->

public static void insertData( String pass , String cpass)
{
    boolean fl=false;
    String root = null;
    MainScreen ms = new MainScreen();
    Enumeration e = FileSystemRegistry.listRoots();
    while (e.hasMoreElements())
    {
        root = (String)e.nextElement();
        if(root.equalsIgnoreCase("store/"))
        {
            fl=true;
        }
    }
    if(!fl)
    {
        UiApplication.getUiApplication().invokeLater(new Runnable()
        {
            public void run()
            {
                Dialog.alert("This application requires an SD card to be present." + 
                             "Exiting application...");
                System.exit(0);
            }
        });
    }
    else
    {
        String dbLocation = "C:/om12345/sql/res/store/";
        // Create URI
        // Statement st=null;
        try
        {
            URI myURI = URI.create("file:///store/home/user/databases/database.sqlite");
            //URI myURI1=URI.
            d = DatabaseFactory.create(myURI);
            Statement st = d.createStatement( "insert into Admin (pass, Cpass) values('"+ pass+"','"+cpass+"')");
            st.prepare();
            st.execute();
            st.close();
            d.close();
            //ms.add(new RichTextField ("tata" + "tata1"));
            // UiApplication.getApplication.invokeLater(pushScreeen(ms));
        }
        catch ( Exception e1 )
        {
            System.out.println( e1.getMessage() );
            e1.printStackTrace();
        }
    }
4

3 に答える 3

1

8520のsqliteデータベースを保存できない可能性があります。詳細については、 BlackBerrySQLiteデータベースの作成/storeに対する私の回答「ファイルシステムの準備ができていません」を参照してください。

于 2012-07-21T19:45:26.250 に答える
0

内部ストレージが 1 GB 未満であり、データベースを C ディレクトリに保存した場合、データベースをストア ディレクトリに作成することはできません。これは、システムからアクセスできますが、デバイスからはアクセスできません。そのため、res フォルダーにコピーされた場所を変更します。& SD カードを使用しているかどうかを確認し、/SDCard を使用してデータベースを保存します。SDCard が利用できない場合は、データベースにアクセスできます。内部ストレージが 1GB を超えている場合は、このリンクを参照してください。

http://docs.blackberry.com/en/developers/deliverables/17952/SQLite_database_files_1219778_11.jsp
于 2012-07-22T15:59:38.797 に答える
0

最初に、" String dbLocation = "C:/om12345/sql/res/store/";" という行を変更する必要があります。これは開発マシン上の場所を指しますが、モバイル デバイスでは機能しないためです。アプリケーション自体の「res」フォルダーを指す必要があります。

于 2012-07-21T16:13:16.870 に答える