我正在尝试获取连接到网站的Android手机的BSSID。我找到了一些关于使用javascript获取BSSID的信息,答案是除非我制作本机代码或插件,否则它是不可能的。
我知道这有点奇怪,但Cordova插件PhoneGap-WifiInfoPlugin似乎是一个解决方案,因为它是由javascript组成的。所以我构建并检查了apk文件的结构,assets/www/
文件夹中的所有文件似乎都在使用apache。
所以我将所有文件和文件夹(index.html
,cordova.js
,cordova-js.src
...)放在Apache/htdocs
文件夹中,并通过chrome连接到index.html
Android模拟器上的浏览器。但插件不起作用,wifi.lan
总是返回空对象{}
。另一方面,Cordova webview应用程序运行良好,并在模拟器上显示bssid。所以插件没有错误。
我注意到nativeApiProvider
中的cordova.js
为空,require('cordova/android/nativeapiprovider')
无效。
我尝试在<script src="XXXX">
中通过html标记index.html
加载所有javascripts并完成加载JavaScript。但它没有再起作用。
有没有办法在网络服务器上使用cordova插件,或者我必须找到另一种方式?
以下是access.log
历史记录的日志:
127.0.0.1 - - [15/Mar/2018:15:09:02 +0900] "GET /index.html HTTP/1.1" 200 3225
127.0.0.1 - - [15/Mar/2018:15:09:02 +0900] "GET /js/jquery-1.12.3.js HTTP/1.1" 200 293650
127.0.0.1 - - [15/Mar/2018:15:09:02 +0900] "GET /cordova.js HTTP/1.1" 200 73303
127.0.0.1 - - [15/Mar/2018:15:09:12 +0900] "GET /js/index.js HTTP/1.1" 200 1664
127.0.0.1 - - [15/Mar/2018:15:09:12 +0900] "GET /cordova_plugins.js HTTP/1.1" 200 465
127.0.0.1 - - [15/Mar/2018:15:09:12 +0900] "GET /js/ni.js HTTP/1.1" 200 79
127.0.0.1 - - [15/Mar/2018:15:09:12 +0900] "GET /plugins/org.apache.cordova.wifiinfo/www/cordovaWifiInfo.js HTTP/1.1" 200 1390
127.0.0.1 - - [15/Mar/2018:15:09:12 +0900] "GET /cordova-js-src/exec.js HTTP/1.1" 200 11143
127.0.0.1 - - [15/Mar/2018:15:09:20 +0900] "GET /cordova-js-src/platform.js HTTP/1.1" 200 4924
127.0.0.1 - - [15/Mar/2018:15:09:20 +0900] "GET /cordova-js-src/android/nativeapiprovider.js HTTP/1.1" 200 1322
127.0.0.1 - - [15/Mar/2018:15:09:20 +0900] "GET /cordova-js-src/android/promptbasednativeapi.js HTTP/1.1" 200 1441
127.0.0.1 - - [15/Mar/2018:15:09:20 +0900] "GET /cordova-js-src/plugin/android/app.js HTTP/1.1" 200 4005
答案 0 :(得分:0)
似乎是一个解决方案,因为它由javascript
组成
This is Java。 Java和JavaScript是完全不同的编程语言。
即使它是用JavaScript编写的,它也可能会调用由Cordova提供的API,而不是Web浏览器提供的。