美文网首页
weex集成到 Android

weex集成到 Android

作者: 谷歌哥哥 | 来源:发表于2017-07-19 11:47 被阅读78次

    修改build.gradle 加入如下基础依赖

    compile'com.android.support:recyclerview-v7:24.2.1'

    compile'com.android.support:support-v4:24.2.1'

    compile'com.android.support:appcompat-v7:24.2.1'

    compile'com.alibaba:fastjson:1.1.46.android'

    compile'com.taobao.android:weex_sdk:0.10.0@aar'

    实现图片下载接口,初始化时设置。

    public class ImageAdapter implements IWXImgLoaderAdapter{

    @Override

    public void setImage(final String url,final ImageViewview,WXImageQuality quality,final WXImageStrategy strategy) {

    WXSDKManager.getInstance().postOnUiThread(newRunnable() {

    @Override

    public void run() {

    ImageLoader.getInstance().displayImage(url,view);

    }

    },0);

    }

    Application中初始化

    public class WXApplication extends Application{

    @Override

    public void onCreate(){

    super.onCreate();

    InitConfig config=newInitConfig.Builder().setImgAdapter(newImageAdapter()).build();

    WXSDKEngine.initialize(this,config);

    }

    }

    注意要在Manifest中设置android:name=".WXApplication"

    开始渲染

    public class MainActivity extends Activity implements IWXRenderListener{

    WXSDKInstance mWXSDKInstance;

    @Override

    protected void onCreate(BundlesavedInstanceState) {

    super.onCreate(savedInstanceState);

    //  setContentView(R.layout.activity_main);

    mWXSDKInstance= newWXSDKInstance(this);

    mWXSDKInstance.registerRenderListener(this);

    /**

    * WXSample可以替换成自定义的字符串,针对埋点有效。

    * template是.we transform后的js文件。

    * option可以为空,或者通过option传入js需要的参数。例如bundle js的地址等。

    * jsonInitData可以为空。

    */

    mWXSDKInstance.render("xxx",WXFileUtils.loadAsset("sample.js",this),null,null,WXRenderStrategy.APPEND_ASYNC);

    }

    @Override

    public void onViewCreated(WXSDKInstanceinstance,Viewview) {

    setContentView(view);

    }

    @Override

    public voidonRenderSuccess(WXSDKInstanceinstance,intwidth,intheight) {

    }

    @Override

    public voidonRefreshSuccess(WXSDKInstanceinstance,intwidth,intheight) {

    }

    @Override

    public voidonException(WXSDKInstanceinstance,StringerrCode,Stringmsg) {

    }

    @Override

    protected voidonResume() {

    super.onResume();

    if(mWXSDKInstance!=null){

    mWXSDKInstance.onActivityResume();

    }

    }

    @Override

    protected voidonPause() {

    super.onPause();

    if(mWXSDKInstance!=null){

    mWXSDKInstance.onActivityPause();

    }

    }

    @Override

    protected voidonStop() {

    super.onStop();

    if(mWXSDKInstance!=null){

    mWXSDKInstance.onActivityStop();

    }

    }

    @Override

    protected voidonDestroy() {

    super.onDestroy();

    if(mWXSDKInstance!=null){

    mWXSDKInstance.onActivityDestroy();

    }

    }

    }

    将编译好.vue 对应的js文件放到android assets下 运行android工程

    相关文章

      网友评论

          本文标题:weex集成到 Android

          本文链接:https://www.haomeiwen.com/subject/bulqnttx.html