• ?
    懂視移動端 視頻1 視頻21 視頻41 視頻61 視頻文章1 視頻文章21 視頻文章41 視頻文章61 視頻擴展1 視頻擴展6 視頻擴展11 視頻擴展16 文章1 文章201 文章401 文章601 文章801 文章1001 資訊1 資訊501 資訊1001 資訊1501 標簽1 標簽501 標簽1001 關鍵詞1 關鍵詞501 關鍵詞1001 關鍵詞1501
    當前位置: 首頁 - 手機 - 正文

    怎么在安卓手機上啟用javascript

    來源:懂視網 責編:小OO 時間:2020-03-03 11:59:20
    導讀怎么在安卓手機上啟用javascript,創建數據庫選擇開始菜單中→程序→【ManagementSQLServer2008】→【SQLServerManagementStudio】命令,打開【SQLServerManagementStudio】窗口,并使用Windows或SQLServer身份驗證建立連接。在【對象資源管理器】窗口中展開服務器,然本文我們將從以下幾個部分來詳細介紹如何在安卓手機上啟用

    創建數據庫 選擇開始菜單中→程序→【Management SQL Server 2008】→【SQL Server Management Studio】命令,打開【SQL Server Management Studio】窗口,并使用Windows或 SQL Server身份驗證建立連接。 在【對象資源管理器】窗口中展開服務器,然

    本文我們將從以下幾個部分來詳細介紹如何在安卓手機上啟用JavaScript:使用Stock瀏覽器、使用谷歌Chrome、使用火狐瀏覽器

    在加載網站的互動內容(比如購物車)時老是遇到麻煩?這些內容大多由JavaScript提供支持,這是一種功能強大的網站腳本語言。默認情況下,所有Android瀏覽器都會啟用JavaScript。如果你不小心關掉了它,或者關了后又忘了怎樣重新啟用,請看下面的步驟1來學習如何啟用JavaScript。第一部分:使用Stock瀏覽器

    目前只有部分可以在手機瀏覽器上運行,這個取決于手機瀏覽器的開發程度。 舉例:電腦瀏覽器能用模態框,但手機瀏覽器本身是沒有層級的概念的,所以這個就根本沒法實現了,只能通過其他方案模擬出那種效果。 jquerymobile這個開源組件可以試下,

    第1步:打開瀏覽器。

    可以用手機qq瀏覽器,這個軟件兼容性比較的好,我就是用的這個軟件,支持很多的網站模式和文件格式的,從來沒有出現過打不開的情況的,采用的chrome+tap高速組件+自帶ie高級內核,運行穩定,快速,啟動的速度也是非常的快,瞬間釋放內存的,沒有

    根據你運行的安卓版本和手機制造商,瀏覽器的名稱可能會是“瀏覽器”或“互聯網”。點擊圖標打開它。

    預期效果:1、java編程實現顯示一個網頁顯示(list,list中有電話號碼),網頁中的數據內容由程序傳過去。 2、點擊網頁中的電話號碼部分,調用手機的打電話界面。 具體實現: 1、在assets中定義index.html文件,這個文件中table中的數據由javasc

    如果在主屏幕上找不到圖標,到應用抽屜里找一下。

    你說的不太具體啊 反正我第一反應是這樣。。這么跟你說吧。。你打開的如果是webview,而此webview被某個按鈕點擊后跳轉過來的,那個按鈕上可能綁了這么一句代碼: 這個代碼其實是為了防止webview和后臺交互的時候執行了默認跳轉,比如用ajax局部

    第2步:點擊“菜單”按鈕。

    PHP 編寫的是沒有問題的,javascript,怕有的瀏覽器不支持JS,曾經遇到過,不支持的,后來一些特效就去掉了,。

    手機上可能有一個“菜單”按鈕,或者也可以點擊瀏覽器右上角的“菜單”圖標。

    現在的安卓手機的瀏覽器幾乎都是可以直接瀏覽普通網頁(非WAP網頁)的,而且都是支持Javascript的(事實上Javascript已經是目前為止唯一的網頁前端腳本語言了)。當然,瀏覽器中一般都有打開或關閉Javascript功能的選項,但只要是打開的,你用al

    第3步:點擊“設置”。

    參考如下內容: 主要有兩種方法。一種是使用系統的瀏覽器組件(IOS中的UIWebView和Android中的WebView),另一方法就是使用整合好的JavaScript引擎。 使用系統的瀏覽器組件比較容易實現但是更復雜,效率也低。 WebView提供了 addJavascriptInter

    “設置”通常位于“菜單”按鈕的底部。點擊后將打開瀏覽器的設置窗口。

    參考如下內容: 主要有兩種方法。一種是使用系統的瀏覽器組件(IOS中的UIWebView和Android中的WebView),另一方法就是使用整合好的JavaScript引擎。 使用系統的瀏覽器組件比較容易實現但是更復雜,效率也低。 WebView提供了 addJavascriptInter

    第4步:點擊“高級”。

    Android之如何使用javascript調用android代碼 使用javascript調用android代碼 1.使用webview對象的addJavascriptInterface方法 2.addJavascriptInterface方法有兩個參數,第一個參數就是我們一般會實現一個自己的類,類里面提供我們要提供給java

    打開瀏覽器的高級選項列表。

    javascript要開啟????? 現代瀏覽器全部都是默認支持javascript,不用開啟。 更多:(www).A2345.(net)

    第5步:選中“啟用JavaScript”復選框。

    一、網頁的JS代碼調用ANDROID中JAVA代碼的方法 在網頁中調用java代碼、需要在webview控件中添加javascriptInterface contentWebView = (WebView) findViewById(R.id.webview); //啟用javascript contentWebView.getSettings().setJavaScriptEnab

    選中這個復選框后,將在瀏覽器中啟用JavaScript,然后你就可以退出“設置”菜單。要讓更改生效,你需要重新加載當前正在訪問的頁面。

    在Cocos2d-js 3.0beta中加入了一個新特性,在Android平臺上我們可以通過反射直接在js中調用java的靜態方法。它的使用方法很簡單: var o = jsb.reflection.callStaticMethod(className, methodName, methodSignature, parameters) 在callStat

    第二部分:使用谷歌Chrome

    在我開始使用OpenAphid-Engine的時候,已經有幾種類似的iOS/Android 項目.這些商業項目或者開源項目使用JavaScript實現代碼特性。比如,Titanium 和PhoneGap 允許開發者使用JavaScript開發本地 iOS/Android apps;ngCore 更是可以使用純正的JavaS

    第1步:打開谷歌Chrome。

    這是個比較專業的問題 首先我推薦一個:react native,facebook推出的一個跨平臺解決方案,去年推出了iOS版,手機淘寶的有一個模塊“猜你喜歡”就是用react native實現的,效果還不錯,另外今年9月份,facebook推出了android版,大家不妨試一下,

    如果你使用的是Chrome而不是安卓Stock瀏覽器,那就要在Chrome瀏覽器的設置菜單中啟用JavaScript。Chrome可以在主屏幕或應用抽屜里找到。

    NativeScript的工作原理:用JavaScript調用原生API實現跨平臺NativeScript是最近推出的一個跨平臺解決方案,可以讓你可以用JavaScript來直接寫Android、iOS本地應用程序,未來還即將擴展到Windows平臺。是最近比較受關注的項目。它與 nw (原名no

    部分安卓手機同時帶有Chrome瀏覽器和Stock瀏覽器。

    android調用js方法比較簡單,一行代碼搞定。 mWebView.loadUrl("javascript:test(" + aa+ ")");//test就是你js方法,然后是參數然后是js調用android方法,比較復雜。 b.c這個window.wst的wst就是Android中自己定義的標識名稱,clickOnAndroid

    第2步:點擊“菜單”按鈕。

    PHP 編寫的是沒有問題的,javascript,怕有的瀏覽器不支持JS,曾經遇到過,不支持的,后來一些特效就去掉了,。

    這個按鈕位于瀏覽器屏幕右上角,看起來像三個垂直排列的盒子。

    當然可以不過要自己代碼中打開js的支持,代碼如下: WebSettings webSettings = webView.getSettings(); webSettings.setDisplayZoomControls(false); webSettings.setJavaScriptEnabled(true); // 設置支持javascript腳本 webSettings.setAllow

    如果你的手機有菜單按鈕,點擊它也行。

    JavaScript沒有權限來調用關機吧,只有使用命令終端才可以吧,而且要root權限

    第3步:點擊“設置”。

    參考如下內容: 主要有兩種方法。一種是使用系統的瀏覽器組件(IOS中的UIWebView和Android中的WebView),另一方法就是使用整合好的JavaScript引擎。 使用系統的瀏覽器組件比較容易實現但是更復雜,效率也低。 WebView提供了 addJavascriptInter

    “設置”位于菜單底部??赡苄枰蛳聺L動才能找到它。

    肯定支持,否則的話很多網站無法正常打開了,它還好意思說自己是瀏覽器?Javascript已經是事實上的唯一的一種前端腳本語言了。當然幾乎所有瀏覽器都有關閉和打開Javascript的選項供用戶設置的。

    第4步:點擊“內容設置”。

    可以使用的; //Android(Java)與js(HTML)交互的接口函數, Android 為橋連對象可隨意設值 mWebView.addJavascriptInterface(new JavaScriptInterface(), "Android"); class JavaScriptInterface{ /** * ----被JS調用的方法----- * javascript

    在“設置”菜單中,查找位于“高級”類別中的“內容設置”選項。

    function aa(){ var txt1=document.getElementById("txt1"); var txt2=document.getElementById("txt2"); var fnt1=document.getElementById("fnt1"); fnt1.style.color="#ffff00";//這樣設置比較好。 fnt1.setAttribute("style", "color:#ffff

    第5步:選中“開啟JavaScript”復選框。

    那學的東西可多了,他包括HTML網頁設計,JAVAScript腳本開發,CSS樣式表外加數據庫的知識,還有頁面嵌套JAVA語言,SSH框架,這就是所謂的WEB開發了,也就是你現在需要學習的東西。 現在主流的WEB編程開發無非就是J2EE和ASP.NET,但是要說實用的

    選中這個復選框后,將在瀏覽器中啟用JavaScript,然后你就可以退出“設置”菜單。要讓更改生效,你需要重新加載當前正在訪問的頁面。

    在Cocos2d-js 3.0beta中加入了一個新特性,在Android平臺上我們可以通過反射直接在js中調用java的靜態方法。它的使用方法很簡單: var o = jsb.reflection.callStaticMethod(className, methodName, methodSignature, parameters) 在callStat

    第三部分:使用火狐瀏覽器

    第1步:打開瀏覽器。

    可以用手機qq瀏覽器,這個軟件兼容性比較的好,我就是用的這個軟件,支持很多的網站模式和文件格式的,從來沒有出現過打不開的情況的,采用的chrome+tap高速組件+自帶ie高級內核,運行穩定,快速,啟動的速度也是非常的快,瞬間釋放內存的,沒有

    如果你使用的是火狐而不是安卓Stock瀏覽器,那就得在“配置”頁面中啟用JavaScript,因為該設置隱藏在普通菜單中。你可以在主屏幕或應用抽屜里找到火狐瀏覽器。

    第2步:打開“配置”瀏覽器。

    由于火狐瀏覽器隱藏了JavaScript設置,因此需要訪問隱藏的“配置”頁面才能更改設置。你可以點擊地址欄,然后輸入about:config來打開配置頁面。

    注意,更改該頁面可能會導致瀏覽器紊亂,因此要謹慎。

    第3步:搜索JavaScript。

    “配置”頁面非常大,所以為了更容易找到它,應該搜索JavaScript。在“配置”頁面頂部可以看到一個搜索欄。輸入javascript,就可以馬上在主窗口中看到搜索結果。

    第4步:找到"javascript.enable" 選項。

    搜索“javascript”時,這個選項通常在搜索結果列表中的第二項。

    第5步:切換JavaScript。

    點擊這個選項以顯示“切換”按鈕。點擊“切換”,將該項從“false”改為“true”?,F在JavaScript 就已經啟用了,但是要讓更改生效,你可能需要重新加載當前正在訪問的頁面。

    小提示

    如果一個網站在你的安卓設備上不能正常運行,原因可能就是JavaScript 沒有啟用。

    警告

    在訪問需要JavaScript的站點之前,請確保JavaScript選項已啟用,否則站點可能無法正常運行。

    擴展閱讀,以下內容您可能還感興趣。

    如何在iOS和Android上選擇一個JavaScript 引擎進行應用開發

    參考如下內容:

    主要有兩種方法。一種是使用系統的瀏覽器組件(IOS中的UIWebView和Android中的WebView),另一方法就是使用整合好的JavaScript引擎。

    使用系統的瀏覽器組件比較容易實現但是更復雜,效率也低。 WebView提供了 addJavascriptInterface 把Java classes注入到JavaScript文本的方法。但是它只支持最原始的幾種數據類型,因此也局限了API設計。并且在Android 2.3模擬器上不穩定,在真機上也會遇到 issue #12987的問題。在IOS上更糟 UIWebView沒有公共的APIs支持JavaScript到Objective-C的交互(你必須使用似有的APIs才能達到與addJavascriptInterface相同的功能)。

    PhoneGap 是基于 UIWebView and WebView的比較出名的項目。開發者*使用回調函數從JavaScript APIs得到返回值。這在游戲上效率極低,也更為復雜。

    早期的ngCore同樣依賴UIWebView來支持iOS。但是這個機制由于其糟糕的表現被取代。

    為了獲得更好的表現、靈活性、兼容性,嵌入全功能的JavaScript引擎變得更為有效。

    android中用javascript嗎

    Android之如何使用javascript調用android代碼

    使用javascript調用android代碼

    1.使用webview對象的addJavascriptInterface方法

    2.addJavascriptInterface方法有兩個參數,第一個參數就是我們一般會實現一個自己的類,類里面提供我們要提供給javascript訪問的方法;第二個參數是訪問我們在obj中聲明的方法時候所用到的js對象,調用模式為window.interfaceName.方法名()或者是javascript: interfaceName.方法名() ;,如myWebView.addJavascriptInterface(new JavaScriptinterface(this), "android");

    3.編寫JavaScriptinterface類,如有一個函數名為showToast()的方法

    4.在html中調用時的形式:javascript:android.showToast()。

    附上一個小例子:

    import android.content.Context;

    import android.widget.Toast;

    public class JavaScriptinterface {

    private Context mContext;

    /** Instantiate the interface and set the context */

    public JavaScriptinterface(Context c) {

    mContext = c;

    }

    /** Show a toast from the web page */

    public void showToast(String toast) {

    Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();

    }

    }

    import java.io.BufferedReader;

    import java.io.File;

    import java.io.InputStreamReader;

    import android.app.Activity;

    import android.content.Context;

    import android.os.Bundle;

    import android.view.KeyEvent;

    import android.webkit.WebView;

    import android.webkit.WebViewClient;

    public class MainActivity extends Activity {

    /** Called when the activity is first created. */

    private WebView myWebView;

    @Override

    public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);

    myWebView = (WebView) findViewById(R.id.myWebView);

    myWebView.getSettings().setJavaScriptEnabled(true);

    myWebView.addJavascriptInterface(new JavaScriptinterface(this),

    "android");

    String htmlText = getFromAssets("test.html");

    //把myWebView加載html

    myWebView.loadData(htmlText, "text/html", "utf-8");

    myWebView.setWebViewClient(new myWebViewClient());

    }

    // 此按鍵監聽的是返回鍵,能夠返回到上一個網頁(通過網頁的hostlistery)

    public boolean onKeyDown(int keyCode, KeyEvent event) {

    if ((keyCode == KeyEvent.KEYCODE_BACK) && myWebView.canGoBack()) {

    myWebView.goBack();

    return true;

    }

    return super.onKeyDown(keyCode, event);

    }

    public String getFromAssets(String fileName) {

    try {

    InputStreamReader inputReader = new InputStreamReader(

    getResources().getAssets().open(fileName));

    BufferedReader bufReader = new BufferedReader(inputReader);

    String line = "";

    String Result = "";

    while ((line = bufReader.readLine()) != null)

    Result += line;

    if (bufReader != null)

    bufReader.close();

    if (inputReader != null)

    inputReader.close();

    return Result;

    } catch (Exception e) {

    e.printStackTrace();

    }

    return null;

    }

    class myWebViewClient extends WebViewClient {

    @Override

    public boolean shouldOverrideUrlLoading(WebView view, String url) {

    // TODO Auto-generated method stub

    view.loadUrl(url);

    return true;

    }

    }

    }

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" dir="ltr">

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

    <script type="text/javascript">

    function showAndroidToast(toast) {

    javascript:android.showToast(toast);

    }

    </script>

    </head>

    <body>

    <input type="button" value="Say hello"

    onClick="showAndroidToast('Hello Android!')" />

    </body>

    </html>

    android的應用程序中,可以直接調用WebView 中的javascript 代碼:

    import java.io.BufferedReader;

    import java.io.File;

    import java.io.InputStreamReader;

    import android.app.Activity;

    import android.content.Context;

    import android.content.Intent;

    import android.net.Uri;

    import android.os.Bundle;

    import android.os.Handler;

    import android.view.KeyEvent;

    import android.view.View;

    import android.view.View.OnClickListener;

    import android.webkit.WebSettings;

    import android.webkit.WebView;

    import android.webkit.WebViewClient;

    import android.widget.Button;

    public class MainActivity02 extends Activity {

    /** Called when the activity is first created. */

    private WebView webView;

    private Button button;

    @Override

    public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.main2);

    webView=(WebView) this.findViewById(R.id.webView);

    button=(Button) this.findViewById(R.id.button);

    WebSettings setting=webView.getSettings();

    //設置支持javascript

    setting.setJavaScriptEnabled(true);

    //增加接口方法,讓html頁面調用

    webView.addJavascriptInterface(new Object(){

    //這里我定義了一個撥打的方法

    public void startPhone(String num){

    Intent intent=new Intent();

    intent.setAction(Intent.ACTION_CALL);

    intent.setData(Uri.parse("tel:"+num));

    startActivity(intent);

    }

    }, "demo");

    //加載頁面

    webView.loadUrl("file:///android_asset/test2.html");

    button.setOnClickListener(new OnClickListener() {

    @Override

    public void onClick(View v) {

    // TODO Auto-generated method stub

    webView.loadUrl("javascript:show('activity傳過來的數據')"); //調用javascript函數

    /*

    * 通過webView.loadUrl("javascript:xxx")方式就可以調用當前網頁中的名稱

    * 為xxx的javascript方法

    */

    }

    });

    }

    }

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

    <html>

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

    <title>Insert title here</title>

    <script type="text/javascript">

    function show(content){

    document.getElementById("countent").innerHTML=

    "這是我的javascript調用. 這是:"+content;

    }

    </script>

    </head>

    <body>

    <table align="center">

    <tr><td>姓名</td><td>電話</td></tr>

    <tr><td>小明</td><td><a href="javascript:demo.startPhone(123)">123</a></td></tr>

    <tr><td>小王</td><td><a href="javascript:demo.startPhone(456)">456</a></td></tr>

    </table>

    <p id="countent">html原始數據</p>

    </body>

    </html>

    安卓瀏覽器的javascript開啟具體有什么用?

    javascript要開啟?????

    現代瀏覽器全部都是默認支持javascript,不用開啟。

    更多:(www).A2345.(net)

    如何在JAVASCRIPT調用Android JAVA函數

    一、網頁的JS代碼調用ANDROID中JAVA代碼的方法

    在網頁中調用java代碼、需要在webview控件中添加javascriptInterface

    contentWebView = (WebView) findViewById(R.id.webview);

    //啟用javascript

    contentWebView.getSettings().setJavaScriptEnabled(true);

    contentWebView.addJavascriptInterface(this, "js對象名");

    在Activity中定義一個要被js調用的方法、src為js傳遞過來的參數、如果沒有不傳也可以

    public void jsFunction(final String str) {

    Toast.makeText(this, str, Toast.LENGTH_SHORT).show();

    runOnUiThread(new Runnable() {

    @Override

    public void run() {

    //在里對Android應用的UI進行處理

    }

    });

    }

    在網頁中、只需要像調用js方法一樣、進行調用就可以

    <a onClick="window.js對象名.jsFunction(´hello world´)" >

    點擊調用java代碼并傳遞參數

    </a>

    二、ANDROID中JAVA代碼調用網頁的JS代碼的方法

    Java代碼調用js并傳參其實是通過WebView的loadUrl方法去調用的、只是參數url的寫法不一樣而已

    // 無參數調用

    contentWebView.loadUrl("javascript:javacalljs()");

    // 傳遞參數調用

    contentWebView.loadUrl("javascript:javacalljswithargs("

    + "´hello world´" + ")");

    三、JAVA和JS交互注意事項

    1、Java 調用 js 里面的函數、效率并不是很高、估計要200ms左右吧、做交互性很強的事情、這種速度很難讓人接受、而js去調Java的方法、速度很快、50ms左右、所以盡量用js調用Java方法

    2、Java 調用 js 的函數、沒有返回值、調用了就控制不到了

    3、Js 調用 Java 的方法、返回值如果是字符串、你會發現這個字符串是 native 的、轉成 locale 的才能正常使用、使用 toLocaleString() 函數就可以了、不過這個函數的速度并不快、轉化的字符串如果很多、將會很耗費時間

    4、網頁中盡量不要使用jQuery、執行起來需要5-6秒、最好使用原生的js寫業務腳本、以提升加載速度、改善用戶體驗。

    如何在android平臺上使用js直接調用Java方法

    在Cocos2d-js 3.0beta中加入了一個新特性,在Android平臺上我們可以通過反射直接在js中調用java的靜態方法。它的使用方法很簡單:

    var o = jsb.reflection.callStaticMethod(className, methodName, methodSignature, parameters...)

    在callStaticMethod方法中,我們通過傳入Java的類名,方法名,方法簽名,參數就可以直接調用Java的靜態方法,并且可以獲得Java方法的返回值。下面介紹的類名和方法簽名可能會有一點奇怪,但是Java的規范就是如此的。

    類名

    參數中的類名必須是包含Java包路徑的完整類名,例如我們在org.cocos2dx.javascript這個包下面寫了一個Test類:

    package org.cocos2dx.javascript;

    public class Test {

    public static void hello(String msg){

    System.out.println(msg);

    }

    public static int sum(int a, int b){

    return a + b;

    }

    public static int sum(int a){

    return a + 2;

    }

    }

    那么這個Test類的完整類名應該是org/cocos2dx/javascript/Test,注意這里必須是斜線/,而不是在Java代碼中我們習慣的點。

    方法名

    方法名很簡單,就是方法本來的名字,例如sum方法的名字就是sum。

    方法簽名

    方法簽名稍微有一點復雜,最簡單的方法簽名是()V,它表示一個沒有參數沒有返回值的方法。其他一些例子:

    (I)V表示參數為一個int,沒有返回值的方法;

    (I)I表示參數為一個int,返回值為int的方法;

    (IF)Z表示參數為一個int和一個float,返回值為boolean的方法;

    現在有一些理解了吧,括號內的符號表示參數類型,括號后面的符號表示返回值類型。因為Java是允許函數重載的,可以有多個方法名相同但是參數返回值不同的方法,方法簽名正是用來幫助區分這些相同名字的方法的。

    目前Cocos2d-js中支持的Java類型簽名有下面4種:

    參數可以是0個或任意多個,直接使用js中的number,bool和string就可以。

    使用示例

    我們將會調用上面的Test類中的靜態方法:

    //調用hello方法

    jsb.reflection.callStaticMethod("org/cocos2dx/javascript/Test", "hello", "(Ljava/lang/String)V", "this is a message from js");

    //調用第一個sum方法

    var result = jsb.reflection.callStaticMethod("org/cocos2dx/javascript/Test", "sum", "(II)I", 3, 7);

    cc.log(result); //10

    //調用第二個sum方法

    var result = jsb.reflection.callStaticMethod("org/cocos2dx/javascript/Test", "sum", "(I)I", 3);

    cc.log(result); //5

    在你的控制臺會有正確的輸出的,這很簡單吧。

    注意

    另外有一點需要注意的就是,在android應用中,cocos的渲染和js的邏輯是在gl線程中進行的,而android本身的UI更新是在app的ui線程進行的,所以如果我們在js中調用的Java方法有任何刷新UI的操作,都需要在ui線程進行。

    例如,在下面的例子中我們會調用一個Java方法,它彈出一個android的Alert對話框。

    //給我們熟悉的AppActivity類稍微加點東西

    public class AppActivity extends Cocos2dxActivity {

    private static AppActivity app = null;

    @Override

    public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    app = this;

    }

    public static void showAlertDialog(final String title,final String message) {

    //這里一定要使用runOnUiThread

    app.runOnUiThread(new Runnable() {

    @Override

    public void run() {

    AlertDialog alertDialog = new AlertDialog.Builder(app).create();

    alertDialog.setTitle(title);

    alertDialog.setMessage(message);

    alertDialog.setIcon(R.drawable.icon);

    alertDialog.show();

    }

    });

    }

    }

    然后我們在js中調用

    jsb.reflection.callStaticMethod("org/cocos2dx/javascript/AppActivity", "showAlertDialog", "(Ljava/lang/String;Ljava/lang/String;)V", "title", "hahahahha");

    這樣調用你就可以看到一個android原生的Alert對話框了。

    再加點料

    現在我們可以從js調用Java了,那么能不能反過來?當然可以! 在你的項目中包含Cocos2dxJavascriptJavaBridge,這個類有一個evalString方法可以執行js代碼,它位于frameworks\js-bindings\bindings\manual\platform\android\java\src\org\cocos2dx\lib文件夾下。我們將會給剛才的Alert對話框增加一個按鈕,并在它的響應中執行js。和上面的情況相反,這次執行js代碼必須在gl線程中進行。

    alertDialog.setButton("OK", new DialogInterface.OnClickListener() {

    public void onClick(DialogInterface dialog, int which) {

    //一定要在GL線程中執行

    app.runOnGLThread(new Runnable() {

    @Override

    public void run() {

    Cocos2dxJavascriptJavaBridge.evalString("cc.log(\"Javascript Java bridge!\")");

    }

    });

    }

    });

    這樣在點擊OK按鈕后,你應該可以在控制臺看到正確的輸出。evalString可以執行任何js代碼,并且它可以訪問到你在js代碼中的對象。

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:0731-84117792 E-MAIL:11247931@qq.com

    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    怎么注冊域名 怎么在photoshop里做出閃光效果 怎么改變蘋果賬號的密碼 怎么在minecraft中制作釣竿 excel電子表格的vlookup函數怎么用 怎么使用icloud 怎么清除火狐瀏覽器的緩存 怎么重置ipodtouch 怎么在kindlefire上閱讀epub文件 怎么打開otterbox手機套 怎么在minecraft移動版里吃東西 怎么確認主板型號 怎么關閉iphone的voiceover 怎么解壓縮zip文件 怎么退出whatsapp 怎么下載電影到ipad中 怎么將藝術品附上mp3音樂曲目 怎么在圣安地列斯中拉幫結派 怎么在templerun中復活 怎么編輯掃描文檔 windows上畫圖橡皮擦怎么變大 制作3d照片 從iphone上恢復被刪除的信息 怎么在microsoftexcel中給一列表排序 怎么在ios系統中打開地點服務 怎么安裝linux 怎么用gimp路徑工具移除圖片背景 怎么重設你的windows或vista密碼 怎么加強路由器信號 怎么在電腦上找到ssid 怎么屏蔽和解除被屏蔽網站 怎么連接電腦和lg智能電視 怎么關閉普通的計算器 windows任務管理器顯示不全 怎么使用excel的求和功能 《糖果粉碎傳奇》第30關怎么過 怎么用蘋果手機掃描文件 怎么玩神奇寶貝 怎么安裝字體 怎么畫minecraft中的人物
    Top
    亚洲大尺度无码无码专区_亚洲精品中文字幕无码AV_大陆国产国语对白视频_国模GOGO中国人体私拍