android局域網(wǎng)怎么通信
android局域網(wǎng)怎么通信
合集游戲上線了,由于不同的盒子電視的遙控器差異性很大,造成我們游戲在操作體驗(yàn)上沒(méi)法達(dá)到一致,下面是學(xué)習(xí)啦小編給大家整理的一些有關(guān)android局域網(wǎng)通信的方法,希望對(duì)大家有幫助!
android局域網(wǎng)通信的方法
用c socket去實(shí)現(xiàn)的話就得配置好ndk環(huán)境,這個(gè)網(wǎng)上教程很多,ndk 7以上的就可以直接在window下編譯成so庫(kù)了。因?yàn)閍ndroid是基于linux系統(tǒng)的,所以這部分代碼其實(shí)可以直接移植linux socket,只是回調(diào)部分會(huì)涉及到j(luò)ava的放射機(jī)制(我在這部分糾結(jié)了很久很久,最好發(fā)現(xiàn)是一個(gè)地方的參數(shù)寫錯(cuò)了)。先大概了解一下jni的語(yǔ)法
JNI的類型
1、基本數(shù)據(jù)類型
以下是java的基本數(shù)據(jù)類型和jni中的基本數(shù)據(jù)類型的比較,及各類型的字節(jié)。
2、引用類型
Java中不同的引用類型在JNI當(dāng)中也有對(duì)應(yīng)的引用類型,以下樹(shù)形表示:
當(dāng)在C語(yǔ)言中使用時(shí),所有的JNI引用類型都被定義為jobject類型。typedef jobject jclass;
jvalue 類型
jvalue類型是一個(gè)基本數(shù)據(jù)類型和引用類型的集合,定義方式如下:
typedef union jvalue { jboolean z; jbyte b; jchar c; jshort s; jint i; jlong j; jfloat f; jdouble d; jobject l; } jvalue;
class的說(shuō)明
(1).類和接口的描述符在java當(dāng)中使用”.”,如:java.lang.String
而在JNI當(dāng)中是用”/”,如:java/lang/String
(2).數(shù)組類型的引用類型用”[”表示。如 int[](java中的表示法) ß---à [I([ 大寫的i 是JNI中的表示法,[ 的個(gè)數(shù)表示數(shù)組的維數(shù) 二維則是 [[ I )
(3)域的說(shuō)明,和java比較如下表:
注意:引用類型的域 用L開(kāi)頭,并且以”;”作為結(jié)尾。數(shù)組類型和class說(shuō)明的一樣。
(4).Method說(shuō)明
JNI中的方法的聲明規(guī)則:先寫參數(shù)列表,再寫返回類型,以下是例子。
看了“android局域網(wǎng)怎么通信”的人還看了
3.關(guān)于國(guó)家計(jì)算機(jī)四級(jí)網(wǎng)絡(luò)工程師的介紹(2)
4.關(guān)于網(wǎng)絡(luò)通信技術(shù)工程師介紹