Skip to content

Commit

Permalink
Merge pull request #5 from alibaba/jsfm-feature-0.15
Browse files Browse the repository at this point in the history
merge with Jsfm feature 0.15
  • Loading branch information
MrRaindrop authored Aug 15, 2016
2 parents 91d987d + 529e36c commit a36ecac
Show file tree
Hide file tree
Showing 57 changed files with 3,382 additions and 850 deletions.
14 changes: 14 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,11 @@ Please ***INSTALL [Git for Windows](https://git-scm.com/download/win)*** and run
0. Click <img src="http://gtms04.alicdn.com/tps/i4/TB1wCcqMpXXXXakXpXX3G7tGXXX-34-44.png" height="16" > (`Run` button)
0. [Add an example](./examples/README.md#add-an-example)


#### Runtime

On Android Platform , Weex code is executed in [weex_v8core](https://github.com/alibaba/weex_v8core) which is based on Google V8 JavaScript engine.

### iOS

0. Prerequisites
Expand All @@ -58,6 +63,15 @@ See [SCRIPTS.md](./SCRIPTS.md) for more information.

See [FAQ](http://alibaba.github.io/weex/doc/faq.html) for more information.


### Community based Weex knowledge site

* [weex article](https://github.com/weexteam/article/wiki) : article collection about Weex(文章集合)
* [weex.help](http://weex.help/) : 3rd forum about Weex(第三方Weex中文技术论坛)
* [gitter.im chinese room](https://gitter.im/weexteam/cn?utm_source=share-link&utm_medium=link&utm_campaign=share-link) : an instant message chat room about Weex(Weex中文聊天室)

## Contributing

See [Weex Contributing Guide](./CONTRIBUTING.md) for more information.


18 changes: 13 additions & 5 deletions android/inspector/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,19 @@ If you are a green hand to the debug of weex, we recommend you to try your first
Of course you can reuse the code of playground to build your own app, that is the simplest way to let your app's js code debuggable. On the other hand QR code is not necessary, if your review the source code you can draw a conclusion that QR CODE is just a way to set `devtools server` address. following those steps you can do the same thing.

- gradle dependency on inspector.
````
dependencies {
compile(:inspector)
}
````
* *source code dependency*. you can set the dependency just like `playground` have done.
* copy project dir `android/inspect` to the same dir of your app.
* add dependency in your app's build.gradle.
````
dependencies {
compile project(:inspector)
}
````
* include the inspector in your project's settings.gradle.
```
include ':app', ':inspector'
```
- initialize in your XXXApplication file.
````
Expand Down
15 changes: 15 additions & 0 deletions android/sdk/src/main/java/com/taobao/weex/InitConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,7 @@
import com.taobao.weex.adapter.IWXHttpAdapter;
import com.taobao.weex.adapter.IWXImgLoaderAdapter;
import com.taobao.weex.adapter.IWXUserTrackAdapter;
import com.taobao.weex.appfram.storage.IWXStorageAdapter;

/**
* Created by sospartan on 5/31/16.
Expand All @@ -217,6 +218,7 @@ public class InitConfig {
private IWXImgLoaderAdapter imgAdapter;
private IWXUserTrackAdapter utAdapter;
private IWXDebugAdapter debugAdapter;
private IWXStorageAdapter storageAdapter;
private String framework;

public IWXHttpAdapter getHttpAdapter() {
Expand All @@ -238,6 +240,12 @@ public String getFramework() {
return framework;
}

public IWXStorageAdapter getStorageAdapter() {
return storageAdapter;
}



private InitConfig() {
}

Expand All @@ -246,6 +254,7 @@ public static class Builder{
IWXImgLoaderAdapter imgAdapter;
IWXUserTrackAdapter utAdapter;
IWXDebugAdapter debugAdapter;
IWXStorageAdapter storageAdapter;
String framework;
public Builder(){

Expand All @@ -271,6 +280,11 @@ public Builder setDebugAdapter(IWXDebugAdapter debugAdapter){
return this;
}

public Builder setStorageAdapter(IWXStorageAdapter storageAdapter) {
this.storageAdapter = storageAdapter;
return this;
}

public Builder setFramework(String framework){
this.framework=framework;
return this;
Expand All @@ -282,6 +296,7 @@ public InitConfig build(){
config.imgAdapter = this.imgAdapter;
config.utAdapter = this.utAdapter;
config.debugAdapter=this.debugAdapter;
config.storageAdapter = this.storageAdapter;
config.framework=this.framework;
return config;
}
Expand Down
9 changes: 9 additions & 0 deletions android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,8 @@
import com.taobao.weex.adapter.IWXUserTrackAdapter;
import com.taobao.weex.appfram.navigator.IActivityNavBarSetter;
import com.taobao.weex.appfram.navigator.WXNavigatorModule;
import com.taobao.weex.appfram.storage.IWXStorageAdapter;
import com.taobao.weex.appfram.storage.WXStorageModule;
import com.taobao.weex.bridge.ModuleFactory;
import com.taobao.weex.bridge.WXBridgeManager;
import com.taobao.weex.bridge.WXModuleManager;
Expand Down Expand Up @@ -244,6 +246,7 @@ public void run() {
sm.setIWXImgLoaderAdapter(config.getImgAdapter());
sm.setIWXUserTrackAdapter(config.getUtAdapter());
sm.setIWXDebugAdapter(config.getDebugAdapter());
sm.setIWXStorageAdapter(config.getStorageAdapter());
if(config.getDebugAdapter()!=null){
config.getDebugAdapter().initDebug(application);
}
Expand Down Expand Up @@ -305,6 +308,7 @@ private static void register() {
registerModule("navigator", WXNavigatorModule.class);
registerModule("stream", WXStreamModule.class);
registerModule("timer", WXTimerModule.class, true);
registerModule("storage", WXStorageModule.class,true);

registerDomObject(WXBasicComponentType.TEXT, WXTextDomObject.class);
registerDomObject(WXBasicComponentType.INPUT, WXTextDomObject.class);
Expand Down Expand Up @@ -460,6 +464,11 @@ public static void setIWXHttpAdapter(IWXHttpAdapter IWXHttpAdapter) {
WXSDKManager.getInstance().setIWXHttpAdapter(IWXHttpAdapter);
}

public static IWXStorageAdapter getIWXStorageAdapter() {
return WXSDKManager.getInstance().getIWXStorageAdapter();
}


public static IActivityNavBarSetter getActivityNavBarSetter() {
return WXSDKManager.getInstance().getActivityNavBarSetter();
}
Expand Down
22 changes: 22 additions & 0 deletions android/sdk/src/main/java/com/taobao/weex/WXSDKManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -136,12 +136,15 @@
import com.taobao.weex.adapter.IWXImgLoaderAdapter;
import com.taobao.weex.adapter.IWXUserTrackAdapter;
import com.taobao.weex.appfram.navigator.IActivityNavBarSetter;
import com.taobao.weex.appfram.storage.DefaultWXStorage;
import com.taobao.weex.appfram.storage.IWXStorageAdapter;
import com.taobao.weex.bridge.WXBridgeManager;
import com.taobao.weex.bridge.WXModuleManager;
import com.taobao.weex.common.WXRefreshData;
import com.taobao.weex.common.WXRuntimeException;
import com.taobao.weex.dom.WXDomManager;
import com.taobao.weex.ui.WXRenderManager;
import com.taobao.weex.utils.WXLogUtils;
import com.taobao.weex.utils.WXUtils;

import java.util.ArrayList;
Expand All @@ -166,6 +169,8 @@ public class WXSDKManager {
private IWXDebugAdapter mIWXDebugAdapter;
private IActivityNavBarSetter mActivityNavBarSetter;

private IWXStorageAdapter mIWXStorageAdapter;

private WXSDKManager() {
mWXRenderManager = new WXRenderManager();
mWXDomManager = new WXDomManager(mWXRenderManager);
Expand Down Expand Up @@ -317,4 +322,21 @@ public IWXDebugAdapter getIWXDebugAdapter() {
public void setIWXDebugAdapter(IWXDebugAdapter IWXDebugAdapter) {
mIWXDebugAdapter = IWXDebugAdapter;
}

void setIWXStorageAdapter(IWXStorageAdapter storageAdapter){
this.mIWXStorageAdapter = storageAdapter;
}

public IWXStorageAdapter getIWXStorageAdapter(){
if(mIWXStorageAdapter == null){
if(WXEnvironment.sApplication != null){
mIWXStorageAdapter = new DefaultWXStorage(WXEnvironment.sApplication);
}else{
WXLogUtils.e("WXStorageModule", "No Application context found,you should call WXSDKEngine#initialize() method in your application");
}
}
return mIWXStorageAdapter;
}


}
Loading

0 comments on commit a36ecac

Please sign in to comment.