Ich habe Android-Anwendung, die Unix-Domain-Socket-Verbindung mit einrichten muss unsere C ++ - Bibliothek (mit Android NDK)
%Vor%Es gibt LocalSocket in Java, das "string" (your.local.socket.address) akzeptiert
%Vor%Aber der Unix-Domain-Socket, der auf der nativen Schicht ist, akzeptiert "absoluten Pfad". Wie können diese beiden Parteien miteinander kommunizieren?
Bitte teilen Sie ein beliebiges Beispiel mit, wenn möglich
LocalSocket verwendet den abstrakten Linux-Namespace anstelle des Dateisystems. In C werden diese Adressen angegeben, indem '\ 0' dem Pfad vorangestellt wird.
%Vor% Beachten Sie auch, dass Sie sizeof(sockaddr_un)
nicht an bind
oder sendto
übergeben sollten, da alle Bytes nach dem Zeichen '\ 0' als abstrakter Socket-Name interpretiert werden. Berechnen und übergeben Sie stattdessen die tatsächliche Größe:
Pro Android C ++ mit dem NDK Buch, Kapitel 10 half mir, mit dem gleichen zu beginnen.
Tags und Links android sockets android-ndk network-programming unix-domain-sockets