zoukankan      html  css  js  c++  java
  • 调用代码JCFXBL与WebView整合打造安卓应用服务平台

    在本文中,我们主要绍介调用代码的内容,自我感觉有个不错的建议和大家分享下

        

    JCFXBL与WebView整合打造安卓用应服务平台

        本系列文章由ex_net(张建波)编写,转载请注明出处。

        http://blog.csdn.net/ex_net/article/details/8829348

        作者:张建波 邮箱: 281451020@qq.com 话电:13577062679 迎欢来电流交!

        一、用应景背绍介

                近最由于要开辟一个运行在Android环境上的设区级的服务平台,由于里头的功能模块要需经常更新,因此就盘算用采WEB式方来开辟。单简说来,就是开辟一个网站。只是这个网站是伪装在一个APK里的而已。

        

         

        二、智能终端用应环境绍介

        

        三、用采Html+JavaScript开辟WebAPP的优点缺分析

         点优:

           (1)将TCP 或 UDP封装在Java函数里,然后供提JS调用接口,可以使得WebApp很便方的用采UDP或TCP与近程服务器行进socket通信;

               (2)在移动终端(嵌入式)环境编程下,经常要获得MAC、IP、备设ID等等信息,如果仅仅靠JavaScript本身的代码是很难实现的,供提安卓本身的APK编程就能够很轻易实现了;

               (3)移植便方,如果要把这些WebAPP用应移植到IOS、或windows上,仅仅只要需从新实现这个“外壳”而已。

       点缺

        四、在JavaScript中通过JS函数调用APK里的Java方法

     (1) APK程序WebView症结代码如下

    webview1.getSettings().setJavaScriptEnabled(true);
    webview1.setWebChromeClient(new WebChromeClient());
    webview1.addJavascriptInterface(this, "JavaObj");

        (2)JavaScript调用APK里的Java函数症结代码

    function btnTS_onclick(){
       var obj = window.JavaObj;
       obj.btn1Click();
    }

        程序效果说明:

        通过在页网里添加一个Button钮按,当用户点击这个钮按时,他会调用APK本身的一个Button钮按的件事。

        完全的APK代码如下:

        每日一道理
    正所谓“学海无涯”。我们正像一群群鱼儿在茫茫的知识之海中跳跃、 嬉戏,在知识之海中出生、成长、生活。我们离不开这维持生活的“海水”,如果跳出这个“海洋”,到“陆地”上去生活,我们就会被无情的“太阳”晒死。
    package a.b;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.Message;
    import android.view.View;
    import android.view.Window;
    import android.view.WindowManager;
    import android.view.View.OnClickListener;
    import android.webkit.WebChromeClient;
    import android.webkit.WebView;
    import android.widget.Button;
    import android.widget.Toast;
    
    public class WebtestActivity extends Activity {
    	/** Called when the activity is first created. */
    	WebView webview1;
    	Button button1;
    	Handler handler;
    
    	@Override
    	public void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		requestWindowFeature(Window.FEATURE_NO_TITLE);
    		getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
    				WindowManager.LayoutParams.FLAG_FULLSCREEN);
    		setContentView(R.layout.main);
    		webview1 = (WebView) findViewById(R.id.webView1);
    		button1 = (Button) findViewById(R.id.button1);
    		button1.setOnClickListener(new OnClickListener() {
    
                public void onClick(View v) {
                	Toast.makeText(getApplicationContext(), "button1 is click",
                		     Toast.LENGTH_SHORT).show();
                }
            });
    		
    		handler = new Handler() {
    
    	        public void handleMessage(Message msg) {
    	            switch (msg.what) {
    	            	case 0:{
    	            		button1.performClick();
    	            		break;
    	            	}
    	            }
    	        }
    
    	    };
    		
    		webview1.getSettings().setJavaScriptEnabled(true);
    		webview1.setWebChromeClient(new WebChromeClient());
    		webview1.addJavascriptInterface(this, "JavaObj");
    		webview1.loadUrl("http://192.168.0.22/test.html");
    	}
    	
        public void btn1Click() {   
        	Message msg = new Message();
        	msg.obj = "";  
    		msg.what = 0;
    		handler.sendMessage(msg);  
        } 
    }

        这个APK动启后,将在webview里册注一个JavaObj象对,册注毕完后,主动打开 test.html 这个页网。

        
    在 test.html 这个面页里,钮按调用 btnTS_onclick()这个函数,就能够调用APK里的btn1Click().

     function btnTS_onclick()

        {

        var obj = window.JavaObj;

        obj.btn1Click();

        }

        五、效果截图如下:

        六、注意事项

           通过JavaScript调用APK里头的GUI件控时,要首先绑定一个件事代码,然后JS通过这个册注象对的件事代码直接调用

        更多案例敬请期待...

         

        (1)获得系统信息例子

        (2)UDP案例

        (3)TCP案例

        (4)JCFXBL调用接口案例

         

        推荐浏览:

        X86环境下的Andoird 模拟器安装置配  

            应用VirtualBox安装Android 4.2.2 x86   http://blog.csdn.net/kunoy/article/details/8768205

            关于Android x86的动启参数设置关相探究    http://blog.csdn.net/kunoy/article/details/8783602

         

        

     

         

    文章结束给大家分享下程序员的一些笑话语录: 火车
    一个年轻的程序员和一个项目经理登上了一列在山里行驶的火车,他们发现 列车上几乎都坐满了,只有两个在一起的空位,这个空位的对面是一个老奶 奶和一个年轻漂亮的姑娘。两个上前坐了下来。程序员和那个姑娘他们比较 暧昧地相互看对方。这时,火车进入山洞,车厢里一片漆黑。此时,只听见 一个亲嘴的声音,随后就听到一个响亮的巴掌声。很快火车出了山洞,他们 四个人都不说话。
    那个老奶奶在喃喃道, “这个年轻小伙怎么这么无礼, 不过我很高兴我的孙女 扇了一个巴掌”。
    项目经理在想,“没想到这个程序员居然这么大胆,敢去亲那姑娘,只可惜那 姑娘打错了人,居然给打了我。”
    漂亮的姑娘想,“他亲了我真好,希望我的祖母没有打疼他”。
    程序员坐在那里露出了笑容, “生活真好啊。 这一辈子能有几次机会可以在亲 一个美女的同时打项目经理一巴掌啊”

  • 相关阅读:
    5.性能测试工具比较:Jmeter和LR
    4.性能测试工具
    10.性能测试软技能
    7.性能测试流程
    Jmeter中文乱码
    Jmeter启动闪退
    tortoiseGit did not exit cleanly (exit code 128)
    职场沟通技巧
    TortoiseGit连接gitlab,一直要求输入密码
    Webmin代码执行漏洞复现
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3033672.html
Copyright © 2011-2022 走看看