weex集成到 Android

修改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)