gpt4 book ai didi

android - 套接字错误 : Permission Denied

转载 作者:行者123 更新时间:2023-11-29 19:08:59 28 4
gpt4 key购买 nike

我尝试通过 android 代码连接到 hdfs 集群。但我遇到了 socketError 中的问题。下面我包含了日志文件和代码。连接已正确建立,但在创建连接套接字时出现问题。

Connect_Ssh:
DllDate: Aug 30 2017
ChilkatVersion: 9.5.0.69
UnlockPrefix: Anything for 30-day trial
Architecture: Little Endian; 32-bit
Language: Android Java
VerboseLogging: 0
connectInner:
hostname: 202.53.13.23
port: 1032
sshConnect:
connectSocket:
connect_ipv6_or_ipv4:
ai_family: 2
ai_socktype: 1
ai_protocol: 6
socketErrno: 13
socketError: Permission denied
Failed to create socket for connecting.
--connect_ipv6_or_ipv4
--connectSocket
Failed to establish initial TCP/IP connection
hostname: 202.53.13.23
port: 1032
--sshConnect
--connectInner
Failed.
--Connect_Ssh
--ChilkatLog

这是打印上述日志文件的代码。代码:

package com.example.sunny.clusteraccess;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import com.chilkatsoft.CkSsh;
public class MainActivity extends AppCompatActivity {
private static final String TAG = "Chilkat";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

CkSsh ssh = new CkSsh();
// Any string automatically begins a fully-functional 30-day trial.
boolean success = ssh.UnlockComponent("Anything for 30-day trial");
if (success != true) {
Log.i(TAG, ssh.lastErrorText());
return;
}
String hostname;
int port;
// Hostname may be an IP address or hostname:
hostname = "202.53.13.23";
port = 22;

success = ssh.Connect(hostname,port);
if (success != true) {
Log.i(TAG, ssh.lastErrorText());
return;
}
success = ssh.AuthenticatePw("student","kmit");
if (success != true) {
Log.i(TAG, ssh.lastErrorText());
return;
}
Log.e(""+success,"");
int channelNum;
channelNum = ssh.OpenSessionChannel();
if (channelNum < 0) {
Log.i(TAG, ssh.lastErrorText());
return;
}
success = ssh.SendReqExec(channelNum,"hdfs dfs -ls");
if (success != true) {
Log.i(TAG, ssh.lastErrorText());
return;
}
success = ssh.ChannelReceiveToClose(channelNum);
if (success != true) {
Log.i(TAG, ssh.lastErrorText());
return;
}
String cmdOutput = ssh.getReceivedText(channelNum,"ansi");
if (ssh.get_LastMethodSuccess() != true) {
Log.i(TAG, ssh.lastErrorText());
return;
}
Log.e(TAG, cmdOutput);
ssh.Disconnect();
}
static {
System.loadLibrary("chilkat");
}
}

最佳答案

您是否在代码中授予了互联网权限??尝试将此添加到您的 list 中文件,如果你还没有这样做。

    <uses-permission android:name="android.permission.INTERNET" /> 

关于android - 套接字错误 : Permission Denied,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46081426/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com