开发HelloWorld程序(Weex开发)

作者:@guogai
- 1.新建一个Module(一个Module就相当于一个app)

    如果已经有一个Project,那么可以直接新建一个Module,如果没有先去新建一个Project。

如图:

创建工程,可以参考“开发HelloWorld程序(Android原生)”

这里的Minumum SDK要选择API16及以上,Weex目前只支持到API16级以上。

 这个时候我们WXHelloWorld程序的原生壳子就创建好了,接下来进入weex环节。

添加完以后,点击Sync Now去同步配置即可,至此,weex sdk已经集成完毕。

集成完sdk以后,我们可以在AS中看到weex的源码。

    6.2 把编译后生成的.js文件复制到Module的asserts资源文件夹下面

   6.3 在Module的Activity实现渲染   
public class MainActivity extends AppCompatActivity implements IWXRenderListener {
private WXSDKInstance mWXSDKInstance;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    initWXSDKInstance();
}

/**
 * 初始化WXSDKInstance
 */
private void initWXSDKInstance() {
    mWXSDKInstance = new WXSDKInstance(this);
    mWXSDKInstance.registerRenderListener(this);
    /**
     * WXHelloWorld 可以替换成自定义的字符串,针对埋点有效。
     * template 是.we transform 后的 js文件。
     * option 可以为空,或者通过option传入 js需要的参数。例如bundle js的地址等。
     * jsonInitData 可以为空。
     * width 为-1 默认全屏,可以自己定制。
     * height =-1 默认全屏,可以自己定制。
     */
    mWXSDKInstance.render("WXHelloWorld", WXFileUtils.loadFileContent("HelloWorld.js", this), null, null, -1, -1, WXRenderStrategy.APPEND_ASYNC);
}

@Override
public void onViewCreated(WXSDKInstance instance, View view) {
    //这里不能少
    setContentView(view);
}

@Override
public void onRenderSuccess(WXSDKInstance instance, int width, int height) {

}

@Override
public void onRefreshSuccess(WXSDKInstance instance, int width, int height) {

}

@Override
public void onException(WXSDKInstance instance, String errCode, String msg) {

}

@Override
protected void onResume() {
    super.onResume();
    if (mWXSDKInstance != null) {
        mWXSDKInstance.onActivityResume();
    }
}

@Override
protected void onPause() {
    super.onPause();
    if (mWXSDKInstance != null) {
        mWXSDKInstance.onActivityPause();
    }
}

@Override
protected void onStop() {
    super.onStop();
    if (mWXSDKInstance != null) {
        mWXSDKInstance.onActivityStop();
    }
}

@Override
protected void onDestroy() {
    super.onDestroy();
    if (mWXSDKInstance != null) {
        mWXSDKInstance.onActivityDestroy();
    }
}

}

 6.4 点击红色箭头指示处,运行程序。

Q&A