Android studio - 无法连接到LDAP服务器

问题描述 投票:0回答:1

我想在android studio中使用LDAP,我在最新版本中使用UnboundID LDAP SDK for Java。

我使用命令:

LDAPConnection ldap = new LDAPConnection("xxx.xxx.xx.xx", 389,"uid=guest3,ou=Users,dc=gal,dc=local", guest3);

连接细节:

  • host:xxx.xxx.xx.xx
  • 港口:389
  • dn:uid = guest3,ou = Users,dc = gal,dc = local
  • 密码:guest3

但是当我尝试连接到LDAP服务器时,出现以下错误:

LDAPException(resultCode = 82(local error),errorMessage ='编码LDAP消息或将其发送到服务器xx.xxx.xx.xx时发生错误:389:NetworkOnMainThreadException(trace ='onNetwork(StrictMode.java:1303)/ socketWrite(SocketOutputStream.java:111)/ write(SocketOutputStream.java:157)/ flushBuffer(BufferedOutputStream.java:82)/ flush(BufferedOutputStream.java:140)/ sendMessage(LDAPConnectionInternals.java:580)/ sendMessage(LDAPConnection.java :4375)/ process(SimpleBindRequest.java:556)/ bind(LDAPConnection.java:2270)/ bind(LDAPConnection.java:2215)/ onClick(LoginActivity.java:57)/ performClick(View.java:5610)/ run (View.java:22265)/ handleCallback(Handler.java:751)/ dispatchMessage(Handler.java:95)/ loop(Looper.java:154)/ main(ActivityThread.java:6077)/ invoke(Method.java: native)/ run(ZygoteInit.java:866)/ main(ZygoteInit.java:756)',ldapSDKVersion = 4.0.4,revision = 27051)')

如果有人知道如何解决这个问题,将不胜感激。提前致谢!

java android ldap unboundid-ldap-sdk
1个回答
0
投票

NetworkOnMainThreadException也许尽量不在主线程上做网络。看看reference

获取点击事件

  public void onClick(View v) {
  new Thread(new Runnable() {
    public void run() {
      final Bitmap b = loadImageFromNetwork();
      mImageView.post(new Runnable() {
        public void run() {
          mImageView.setImageBitmap(b);
        }
      });
    }
  }).start();
}

AsyncTask的目标是为您处理线程管理。我们之前的示例可以使用AsyncTask轻松重写:

public void onClick(View v) {
  new DownloadImageTask().execute("http://example.com/image.png");
}

private class DownloadImageTask extends AsyncTask {
     protected Bitmap doInBackground(String... urls) {
         return loadImageFromNetwork(urls[0]);
     }

     protected void onPostExecute(Bitmap result) {
         mImageView.setImageBitmap(result);
     }
 }
© www.soinside.com 2019 - 2024. All rights reserved.