Я работаю на Android Studio с NDK и cmake. Я пытаюсь создать соединение с этим URL. Но, к сожалению, я получаю ошибку 7.
#include <jni.h>
#include <string>
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <iostream>
extern "C" JNIEXPORT jboolean
JNICALL Java_com_example_rtmplib_MainActivity_stringFromJNI(JNIEnv* env, jobject /* this */) {
char hostname[] = "www.google.com";
char port[] = "80";
struct addrinfo hints, *res, *p;
int status;
char ipstr[INET6_ADDRSTRLEN];
memset(&hints, 0, sizeof hints);
hints.ai_family = AF_INET; // AF_INET or AF_INET6 to force version
hints.ai_socktype = SOCK_STREAM;
printf("Calling getaddrinfo hostname: \"%s\" port \"%s\":\n", hostname, port);
if ((status = getaddrinfo(hostname, port, &hints, &res)) != 0) {
printf("ERR getaddrinfo: %s, error nr: %d\n", gai_strerror(status), status);
}
return true;
}
Также я добавил эти разрешения в манифест. xml file:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />