1

これは、プロジェクトにJavaドライバーを追加する方法です

compile 'org.mongodb:mongo-java-driver:2.13.2'

Android アプリを実行した後、Gradle がクラッシュします。jar を直接追加すると、とにかくアプリがクラッシュします。

以下の接続コード:

MongoClient mongoClient = new MongoClient("mongodb://Dbuser:dbpass@ds047692.mongolab.com:47692");
DB db = mongoClient.getDB("testdb");
Set<String> collectionNames = db.getCollectionNames();

必要なのは、アプリから mongo データベースに接続することだけです。接続文字列が正しいかどうかわかりません。私のdbアカウントで私は見つけました:

標準 URI 経由でドライバーを使用して接続するには: mongodb://blablauser:password@ds047692.mongolab.com:47692/urdb

しかし、コードでは接続されません。

私はmongo-java-driverを使用しています。しかし、データベースを読み取ろうとするたびに、

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.artem.mongodb/com.example.artem.mongodb.MainActivity}: com.mongodb.MongoTimeoutException: Timed out after 30000 ms while waiting for a server that matches ReadPreferenceServerSelector{readPreference=primary}. Client view of cluster state is {type=UNKNOWN, servers=[{address=ds047692.mongolab.com:47692, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exception opening socket}, caused by {java.net.SocketException: socket failed: EACCES (Permission denied)}, caused by {android.system.ErrnoException: socket failed: EACCES (Permission denied)}}]

Document myDoc = collection.find().first();//crash point

自分のデータベースにアクセスできないのはなぜですか?

4

2 に答える 2

-1

あなたがそれを解決したかどうかはわかりませんが、私は同じ問題を抱えていて 、http リクエストでこのhttp://docs.mlab.com/data-api/を使用しました。

于 2016-12-10T12:00:23.213 に答える