Hybrid App混合开发实战

Hybird App

最近遇到一个需求,产品经理要求Android客户端点击“积分商城”调用H5页面的时候,Android和Js可以相互调用方法。这就涉及到HTML和Android之间的交互和通讯。作为Android实习生,虽然是第一次接触,且产品不像以前比赛项目那样,这次是面向消费者人群。于是乎,一顿猛操作…“度娘”[hhhhh~]。大概了解之后,一开始看的资料全是用内嵌的WebView。但是项目中用的是开源框架AgentWeb,且很多地方都涉及到调用相关方法。接着就开始了AgentWeb 的流浪之旅。buBBle~

具体看以下代码:

import android.content.Context;
import android.os.Handler;
import android.os.Looper;
import android.util.Log;
import android.webkit.JavascriptInterface;
import android.widget.Toast;
import com.just.agentweb.AgentWeb;
import org.json.JSONObject;

//定义一个AndroidInterface类 方便调用、管理

public class AndroidInterface {
   


    private AgentWeb agent;
    private Context context;

    public AndroidInterface(AgentWeb agent, Context context) {
   
        this.agent = agent;
        this.context = context;
    }

    private Handler deliver = new Handler(Looper.getMainLooper());

    @JavascriptInterface
    public void callAndroid(final String msg) {
   


        deliver.post(new Runnable() {
   
            @Override
            public void run() {
   

                Log.i("Info", "main Thread:" + Thread.currentThread());
                Toast.makeText(context.getApplicationContext(), "" + msg, Toast.LENGTH_LONG).show();
            }
        });

        Log.i("Info", "Thread:" + Thread.currentThread());



    }
    
    //这里是你要传的参数给Js
    @JavascriptInterface
    public String getJson(){
   
        String result="";
        try {
   
            JSONObject mJSONObject=new JSONObject();
            mJSONObject.put("phone_number", "12763912321");
            mJSONObject.put("name"
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值