我有一個本地節點休息API在我的系統上運行。Nativescript在android和ios上訪問本地主機訪問
我的問題是,當從android訪問本地主機時,我們應該使用10.0.2.2。而當使用ios時,我們可以使用localhost。
那麼,有沒有辦法,我們可以控制我們打電話,取決於環境iOS或Android在nativescript應用程序的主機名
我有一個本地節點休息API在我的系統上運行。Nativescript在android和ios上訪問本地主機訪問
我的問題是,當從android訪問本地主機時,我們應該使用10.0.2.2。而當使用ios時,我們可以使用localhost。
那麼,有沒有辦法,我們可以控制我們打電話,取決於環境iOS或Android在nativescript應用程序的主機名
內JS文件,你可以使用以下(更好當u需要快速決定使用什麼每個平臺的代碼)
/*at top file*/
var platform = require("platform");
var nativePlatformLocalhost;
/*in some function or globally*/
if(platform.device.os === platform.platformNames.ios){
/*localhost for ios*/
nativePlatformLocalhost= "localhost";
}
else if(platform.device.os === platform.platformNames.android){
/*localhost for android*/
nativePlatformLocalhost= "10.0.2.2";
}
,或者如果u需要基於平臺的更復雜的Android/IOS代碼,你可以寫兩個文件,一個用於Android系統,一個用於與名稱約定iOS和要求如下行
require("file.js");
你會根據當前運行平臺運行時,當u創建具有下列名稱
file.android.js file.ios.js
http://docs.nativescript.org/ui/supporting-multiple-screens.html#platform-qualifiers
添加答案
的打字稿版本兩個文件獲取文件import {platformNames} from "platform";
import {device} from "platform";
var nativePlatformLocalhost;
/*in some function or globally*/
if(device.os === platformNames.ios){
/*localhost for ios*/
nativePlatformLocalhost= "localhost";
}
else if(device.os === platformNames.android){
/*localhost for android*/
nativePlatformLocalhost= "10.0.2.2";
}