You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by kf...@apache.org on 2017/08/10 12:44:31 UTC
[01/10] incubator-weex git commit: + [ios] support extend call native
for third part
Repository: incubator-weex
Updated Branches:
refs/heads/0.16-dev d1bdd73bc -> 4bf47ed41
+ [ios] support extend call native for third part
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/b3e40493
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/b3e40493
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/b3e40493
Branch: refs/heads/0.16-dev
Commit: b3e404937bafa77cee4544c97598c1c4ec6ef2ed
Parents: f102f3f
Author: 齐山 <su...@163.com>
Authored: Sun Jul 23 21:30:45 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Sun Jul 23 21:30:45 2017 +0800
----------------------------------------------------------------------
ios/sdk/WeexSDK.xcodeproj/project.pbxproj | 4 +++
ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m | 14 ++++++++++
.../Protocol/WXExtendCallNativeProtocol.h | 27 ++++++++++++++++++++
3 files changed, 45 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b3e40493/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK.xcodeproj/project.pbxproj b/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
index d16e630..46f7adb 100644
--- a/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
+++ b/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
@@ -238,6 +238,7 @@
C41E1A981DC1FD15009C7F90 /* WXDatePickerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C41E1A961DC1FD15009C7F90 /* WXDatePickerManager.m */; };
C43C03E81EC8ACA40044C7FF /* WXPrerenderManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C43C03E41EC8ACA40044C7FF /* WXPrerenderManager.h */; settings = {ATTRIBUTES = (Public, ); }; };
C43C03E91EC8ACA40044C7FF /* WXPrerenderManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C43C03E51EC8ACA40044C7FF /* WXPrerenderManager.m */; };
+ C4424E5B1F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */; };
C4B3D6D41E6954300013F38D /* WXEditComponent.h in Headers */ = {isa = PBXBuildFile; fileRef = C4B3D6D21E6954300013F38D /* WXEditComponent.h */; };
C4B3D6D51E6954300013F38D /* WXEditComponent.m in Sources */ = {isa = PBXBuildFile; fileRef = C4B3D6D31E6954300013F38D /* WXEditComponent.m */; };
C4B834271DE69B09007AD27E /* WXPickerModule.m in Sources */ = {isa = PBXBuildFile; fileRef = C4B834251DE69B09007AD27E /* WXPickerModule.m */; };
@@ -555,6 +556,7 @@
C41E1A961DC1FD15009C7F90 /* WXDatePickerManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXDatePickerManager.m; sourceTree = "<group>"; };
C43C03E41EC8ACA40044C7FF /* WXPrerenderManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXPrerenderManager.h; sourceTree = "<group>"; };
C43C03E51EC8ACA40044C7FF /* WXPrerenderManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXPrerenderManager.m; sourceTree = "<group>"; };
+ C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtendCallNativeProtocol.h; sourceTree = "<group>"; };
C4B3D6D21E6954300013F38D /* WXEditComponent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXEditComponent.h; sourceTree = "<group>"; };
C4B3D6D31E6954300013F38D /* WXEditComponent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXEditComponent.m; sourceTree = "<group>"; };
C4B834251DE69B09007AD27E /* WXPickerModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXPickerModule.m; sourceTree = "<group>"; };
@@ -1002,6 +1004,7 @@
74EF31A91DE58AE600667A07 /* WXURLRewriteProtocol.h */,
042013AC1E66CD6A001FC79C /* WXValidateProtocol.h */,
DC6836E51EBB12B200AD2D84 /* WXConfigCenterProtocol.h */,
+ C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */,
);
path = Protocol;
sourceTree = "<group>";
@@ -1338,6 +1341,7 @@
744BEA551D05178F00452B5D /* WXComponent+Display.h in Headers */,
741081231CED6756001BC6E5 /* WXComponentFactory.h in Headers */,
59D3CA4A1CFC3CE1008835DC /* NSTimer+Weex.h in Headers */,
+ C4424E5B1F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h in Headers */,
D334510C1D3E19B80083598A /* WXCanvasModule.h in Headers */,
742AD73A1DF98C8B007DC46C /* WXResourceLoader.h in Headers */,
746319291C71B92600EFEBD4 /* WXModalUIModule.h in Headers */,
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b3e40493/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m b/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
index ee9406a..f241502 100644
--- a/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
+++ b/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
@@ -34,6 +34,7 @@
#import "JSValue+Weex.h"
#import "WXJSExceptionProtocol.h"
#import "WXSDKManager.h"
+#import "WXExtendCallNativeProtocol.h"
#import <dlfcn.h>
@@ -103,6 +104,9 @@
initWithData:nsdataFromBase64String encoding:NSUTF8StringEncoding];
return base64Decoded;
};
+ _jsContext[@"extendCallNative"] = ^(JSValue *value ) {
+ return [weakSelf extendCallNative:[value toDictionary]];
+ };
_jsContext[@"nativeLog"] = ^() {
static NSDictionary *levelMap;
@@ -496,4 +500,14 @@
[_timers removeObject:ret];
}
}
+
+-(id)extendCallNative:(NSDictionary *)dict
+{
+ id extendCallNative = [WXSDKEngine handlerForProtocol:@protocol(WXExtendCallNativeProtocol)];
+ if(extendCallNative){
+ return [extendCallNative excuteCallNative:dict];
+ }
+ return @(-1);
+}
+
@end
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b3e40493/ios/sdk/WeexSDK/Sources/Protocol/WXExtendCallNativeProtocol.h
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Protocol/WXExtendCallNativeProtocol.h b/ios/sdk/WeexSDK/Sources/Protocol/WXExtendCallNativeProtocol.h
new file mode 100644
index 0000000..5afb1dc
--- /dev/null
+++ b/ios/sdk/WeexSDK/Sources/Protocol/WXExtendCallNativeProtocol.h
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+
+#import <Foundation/Foundation.h>
+
+@protocol WXExtendCallNativeProtocol <NSObject>
+
+- (id)excuteCallNative:(NSDictionary *)dict;
+
+@end
[07/10] incubator-weex git commit: Merge branch '0.16-dev' of
https://git-wip-us.apache.org/repos/asf/incubator-weex into
ios-native-0.16-dev
Posted by kf...@apache.org.
Merge branch '0.16-dev' of https://git-wip-us.apache.org/repos/asf/incubator-weex into ios-native-0.16-dev
# Conflicts:
# ios/playground/WeexDemo/AppDelegate.m
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/31c696f5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/31c696f5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/31c696f5
Branch: refs/heads/0.16-dev
Commit: 31c696f513d7f6f07571dd3e9b589b47548ebb08
Parents: 816bde1 5894ef6
Author: 齐山 <su...@163.com>
Authored: Thu Aug 10 16:41:07 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Thu Aug 10 16:41:07 2017 +0800
----------------------------------------------------------------------
.gitignore | 5 +-
.travis.yml | 8 +-
android/build.gradle | 8 +-
.../java/com/alibaba/weex/IndexActivity.java | 14 +
.../java/com/taobao/weex/WXSDKInstance.java | 11 +-
.../main/java/com/taobao/weex/WXSDKManager.java | 10 +
.../java/com/taobao/weex/bridge/WXBridge.java | 8 +-
.../com/taobao/weex/bridge/WXBridgeManager.java | 36 +-
.../taobao/weex/bridge/WXValidateProcessor.java | 7 +-
.../java/com/taobao/weex/common/Constants.java | 1 +
.../taobao/weex/common/WXWorkThreadManager.java | 48 +
.../java/com/taobao/weex/dom/WXDomObject.java | 17 +-
.../com/taobao/weex/dom/WXTextDomObject.java | 91 +-
.../dom/action/AbstractAddElementAction.java | 2 +-
.../taobao/weex/dom/action/AnimationAction.java | 1 +
.../ui/animation/CameraDistanceProperty.java | 54 +
.../weex/ui/animation/WXAnimationBean.java | 86 +-
.../taobao/weex/ui/component/WXComponent.java | 16 -
.../com/taobao/weex/ui/component/WXImage.java | 68 +
.../ui/component/list/BasicListComponent.java | 15 +-
.../taobao/weex/utils/WXViewToImageUtil.java | 151 +
.../java/com/taobao/weex/utils/WXViewUtils.java | 4 +-
build/build.js | 106 +-
build/config.js | 54 +-
build/karma.vue.conf.js | 2 +-
dangerfile.js | 79 +-
entry.js | 11 +
examples/vue/components/scroller.vue | 9 +-
examples/vue/index.vue | 1 +
examples/vue/modules/picker.vue | 64 +
html5/frameworks/legacy/core/array.js | 4 +
html5/frameworks/legacy/core/object.js | 6 +
html5/frameworks/legacy/static/create.js | 7 +-
html5/frameworks/legacy/vm/directive.js | 6 +
html5/frameworks/vanilla/index.js | 35 +-
html5/render/vue/README.md | 92 +
html5/render/vue/components/a.js | 90 +-
html5/render/vue/components/div.js | 43 +-
html5/render/vue/components/image.js | 76 +-
html5/render/vue/components/index.js | 37 +-
html5/render/vue/components/input.js | 130 +-
html5/render/vue/components/scrollable/cell.js | 39 +
.../render/vue/components/scrollable/header.js | 102 +-
html5/render/vue/components/scrollable/index.js | 48 +
html5/render/vue/components/scrollable/list.js | 82 +
.../vue/components/scrollable/list/cell.js | 36 -
.../vue/components/scrollable/list/index.js | 77 -
.../vue/components/scrollable/list/listMixin.js | 47 -
.../vue/components/scrollable/list/style.js | 34 -
.../components/scrollable/loading-indicator.js | 17 +-
.../render/vue/components/scrollable/loading.js | 141 +-
.../vue/components/scrollable/mixins/index.js | 26 +
.../vue/components/scrollable/mixins/list.js | 46 +
.../components/scrollable/mixins/scrollable.js | 267 +
.../render/vue/components/scrollable/refresh.js | 157 +-
.../vue/components/scrollable/scroller.js | 143 +-
.../render/vue/components/scrollable/style.css | 90 +
.../vue/components/scrollable/waterfall.js | 573 +-
html5/render/vue/components/slider/index.js | 52 +-
html5/render/vue/components/slider/indicator.js | 18 +-
.../render/vue/components/slider/slideMixin.js | 46 +-
.../vue/components/slider/slider-neighbor.js | 12 +-
html5/render/vue/components/slider/slider.css | 19 +
html5/render/vue/components/slider/slider.js | 75 +
html5/render/vue/components/switch.js | 114 +-
html5/render/vue/components/text.js | 52 +-
html5/render/vue/components/textarea.js | 104 +-
html5/render/vue/components/video.js | 107 +-
html5/render/vue/components/web.js | 98 +-
html5/render/vue/config.js | 10 +-
html5/render/vue/core/node.js | 27 +-
html5/render/vue/core/style.js | 35 -
html5/render/vue/env/global.js | 6 +
html5/render/vue/env/index.js | 5 -
html5/render/vue/index.js | 25 -
html5/render/vue/lib/gesture.js | 6 +
html5/render/vue/mixins/base.js | 71 -
html5/render/vue/mixins/index.js | 2 -
html5/render/vue/mixins/scrollable.js | 233 -
html5/render/vue/mixins/style.js | 4 +-
html5/render/vue/modules/animation.js | 36 +-
html5/render/vue/modules/dom.js | 96 +-
html5/render/vue/modules/globalEvent.js | 8 +-
html5/render/vue/modules/index.js | 36 +-
html5/render/vue/modules/modal/toast.js | 23 +-
html5/render/vue/modules/navigator.js | 10 +-
html5/render/vue/modules/webview.js | 18 +-
html5/render/vue/styles/base.css | 86 +-
html5/render/vue/styles/reset.css | 19 +
html5/render/vue/utils/lazyload.js | 24 +-
html5/render/vue/utils/perf.js | 283 +-
html5/runtime/callback-manager.js | 12 +-
html5/runtime/config.js | 5 +-
html5/runtime/normalize.js | 107 +
html5/runtime/task-center.js | 59 +-
html5/runtime/vdom/document.js | 2 +
html5/runtime/vdom/element.js | 15 +-
html5/test/render/vue/components/list.js | 2 +-
html5/test/render/vue/components/switch.js | 5 +-
html5/test/render/vue/core/node.js | 2 +
html5/test/render/vue/examples/list-cell.js | 2 +-
html5/test/render/vue/helper/index.js | 2 +-
html5/test/render/vue/helper/main.js | 3 +-
html5/test/render/vue/helper/utils.js | 4 +
html5/test/render/vue/modules/animation.js | 12 +-
html5/test/render/vue/modules/dom.js | 27 +-
html5/test/render/vue/modules/globalEvent.js | 8 +-
html5/test/render/vue/modules/navigator.js | 8 +-
html5/test/render/vue/modules/webview.js | 10 +-
html5/test/render/vue/utils/lazyload.js | 59 +-
html5/test/render/vue/utils/perf.js | 94 +-
html5/test/render/vue/utils/style.js | 50 +-
ios/.gitignore | 1 +
ios/playground/Podfile | 2 +-
.../WeexDemo.xcodeproj/project.pbxproj | 24 +-
ios/playground/WeexDemo/AppDelegate.m | 8 +-
ios/playground/WeexDemo/Info.plist | 4 +
ios/playground/WeexDemo/WXDemoViewController.m | 2 -
ios/playground/WeexDemo/WXExtModule.h | 26 +
ios/playground/WeexDemo/WXExtModule.m | 43 +
ios/sdk/WeexSDK.xcodeproj/project.pbxproj | 16 +-
.../Component/Recycler/WXRecyclerComponent.m | 58 +-
.../Recycler/WXRecyclerDragController.h | 52 +
.../Recycler/WXRecyclerDragController.m | 208 +
.../WeexSDK/Sources/Component/WXAComponent.m | 1 +
.../WeexSDK/Sources/Component/WXEditComponent.m | 11 +-
.../Sources/Component/WXImageComponent.m | 239 +-
.../Sources/Component/WXTextAreaComponent.m | 2 +-
ios/sdk/WeexSDK/Sources/Component/WXTransform.h | 1 +
ios/sdk/WeexSDK/Sources/Component/WXTransform.m | 33 +-
.../Sources/Component/WXVideoComponent.m | 1 +
.../WeexSDK/Sources/Component/WXWebComponent.m | 1 +
.../WeexSDK/Sources/Loader/WXResourceLoader.m | 2 +-
ios/sdk/WeexSDK/Sources/Manager/WXRuleManager.m | 1 +
ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m | 1 +
.../WeexSDK/Sources/Module/WXAnimationModule.m | 5 +
ios/sdk/WeexSDK/Sources/Module/WXStreamModule.m | 1 +
.../WeexSDK/Sources/Module/WXWebSocketModule.h | 1 -
.../WeexSDK/Sources/Module/WXWebSocketModule.m | 1 +
.../Sources/Network/WXResourceResponse.h | 2 +-
.../Sources/Protocol/WXURLRewriteProtocol.h | 2 +-
ios/sdk/WeexSDK/Sources/Utility/WXDefine.h | 2 +
ios/sdk/WeexSDK/Sources/WeexSDK.h | 1 +
package.json | 35 +-
packages/weex-js-framework/.npmignore | 4 +
packages/weex-js-framework/index.js | 26001 +++++++++++++++++
packages/weex-js-framework/index.min.js | 1 +
packages/weex-js-framework/package.json | 22 +
packages/weex-js-runtime/.npmignore | 4 +
packages/weex-js-runtime/index.js | 4088 +++
packages/weex-js-runtime/index.min.js | 1 +
packages/weex-js-runtime/index.min.js.gz | Bin 0 -> 13215 bytes
packages/weex-js-runtime/package.json | 22 +
packages/weex-legacy-framework/.npmignore | 4 +
packages/weex-legacy-framework/index.js | 5770 ++++
packages/weex-legacy-framework/index.min.js | 1 +
packages/weex-legacy-framework/package.json | 22 +
packages/weex-vue-plugins/weex-vue-a/README.md | 3 +
.../weex-vue-plugins/weex-vue-a/package.json | 26 +
.../weex-vue-plugins/weex-vue-a/src/index.js | 2 +
.../weex-vue-animation/README.md | 3 +
.../weex-vue-animation/package.json | 27 +
.../weex-vue-animation/src/index.js | 2 +
.../weex-vue-clipboard/README.md | 3 +
.../weex-vue-clipboard/package.json | 27 +
.../weex-vue-clipboard/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-dom/README.md | 3 +
.../weex-vue-plugins/weex-vue-dom/package.json | 27 +
.../weex-vue-plugins/weex-vue-dom/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-event/README.md | 3 +
.../weex-vue-event/package.json | 27 +
.../weex-vue-event/src/index.js | 2 +
.../weex-vue-geolocation/README.md | 3 +
.../weex-vue-geolocation/package.json | 27 +
.../weex-vue-geolocation/src/index.js | 2 +
.../weex-vue-global-event/README.md | 3 +
.../weex-vue-global-event/package.json | 27 +
.../weex-vue-global-event/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-input/README.md | 3 +
.../weex-vue-input/package.json | 26 +
.../weex-vue-input/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-modal/README.md | 3 +
.../weex-vue-modal/package.json | 27 +
.../weex-vue-modal/src/index.js | 2 +
.../weex-vue-navigator/README.md | 3 +
.../weex-vue-navigator/package.json | 27 +
.../weex-vue-navigator/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-slider/README.md | 3 +
.../weex-vue-slider/package.json | 27 +
.../weex-vue-slider/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-storage/README.md | 3 +
.../weex-vue-storage/package.json | 27 +
.../weex-vue-storage/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-stream/README.md | 3 +
.../weex-vue-stream/package.json | 27 +
.../weex-vue-stream/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-switch/README.md | 3 +
.../weex-vue-switch/package.json | 26 +
.../weex-vue-switch/src/index.js | 2 +
.../weex-vue-textarea/.DS_Store | Bin 0 -> 6148 bytes
.../weex-vue-textarea/README.md | 3 +
.../weex-vue-textarea/package.json | 26 +
.../weex-vue-textarea/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-video/README.md | 3 +
.../weex-vue-video/package.json | 26 +
.../weex-vue-video/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-web/README.md | 3 +
.../weex-vue-plugins/weex-vue-web/package.json | 26 +
.../weex-vue-plugins/weex-vue-web/src/index.js | 2 +
.../weex-vue-websocket/README.md | 3 +
.../weex-vue-websocket/package.json | 27 +
.../weex-vue-websocket/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-webview/README.md | 3 +
.../weex-vue-webview/package.json | 27 +
.../weex-vue-webview/src/index.js | 2 +
packages/weex-vue-render/README.md | 92 +
packages/weex-vue-render/package.json | 9 +-
packages/weex-vue-render/src/index.core.js | 13 +
packages/weex-vue-render/src/index.js | 12 +
pre-build/native-bundle-main.js | 16 +-
scripts/commit-msg.sh | 2 +-
scripts/dist-vue.sh | 2 +-
test/pages/components/hyperlink_target.vue | 1 +
test/pages/components/iconfont.vue | 71 +
test/pages/components/input-event.vue | 65 +
test/pages/components/refresh-loading.vue | 115 +
test/pages/components/switch-event.vue | 60 +
test/pages/components/web-event.vue | 56 +
test/pages/image-onload.vue | 14 +-
test/pages/include/button.vue | 162 +
test/pages/include/h1.vue | 13 +
test/pages/include/h2.vue | 13 +
test/pages/include/h3.vue | 13 +
test/pages/include/hn.vue | 47 +
test/pages/include/panel.vue | 141 +
test/pages/include/wxc-desc.vue | 66 +
test/pages/modules/animation-translate.vue | 129 +
test/pages/modules/clipboard-event.vue | 57 +
test/pages/modules/cover-generate.vue | 53 +
test/pages/modules/downgrade-event.vue | 74 +
test/pages/modules/gesture-longpress.vue | 75 +
test/pages/modules/modal-event.vue | 61 +
test/pages/modules/picker-event.vue | 63 +
test/pages/modules/storage-event.vue | 59 +
test/pages/modules/stream-result.vue | 85 +
test/run.sh | 30 +-
test/screenshot/border-android.png | Bin 156247 -> 158634 bytes
test/scripts/components/iconfont.test.js | 34 +
test/scripts/components/image-onload.test.js | 10 +
test/scripts/components/input-event.test.js | 36 +
test/scripts/components/refresh-loading.test.js | 38 +
test/scripts/components/switch-event.test.js | 38 +
test/scripts/components/web-event.test.js | 30 +
.../scripts/modules/animation-translate.test.js | 40 +
test/scripts/modules/clipboard-event.test.js | 35 +
test/scripts/modules/downgrade-event.test.js | 30 +
test/scripts/modules/gesture-longpress.test.js | 37 +
test/scripts/modules/modal-event.test.js | 35 +
test/scripts/modules/picker-event.test.js | 41 +
test/scripts/modules/storage-event.test.js | 36 +
test/scripts/modules/stream-result.test.js | 34 +
test/scripts/util.js | 41 +
test/scripts/zcover-generate.js | 32 +
test/serve.sh | 2 +-
vue.html | 11 +-
265 files changed, 42656 insertions(+), 2588 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/31c696f5/ios/playground/WeexDemo.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --cc ios/playground/WeexDemo.xcodeproj/project.pbxproj
index 7cfcbd8,1943c69..5c56412
--- a/ios/playground/WeexDemo.xcodeproj/project.pbxproj
+++ b/ios/playground/WeexDemo.xcodeproj/project.pbxproj
@@@ -28,9 -28,13 +28,14 @@@
84361D5B1CA10F8E00F43825 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 775BEE8A1C1E8ECC008D1629 /* Assets.xcassets */; };
846FC8DA1E1B853100949E7D /* WXSyncTestModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 7478481D1E0CD4910044500D /* WXSyncTestModule.m */; };
846FC8DB1E1B853600949E7D /* WXATViewHierarchyPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = DCABAFF21D029685001C8592 /* WXATViewHierarchyPlugin.m */; };
+ 847CAF2B1F39BB6B00551725 /* UIView+UIThreadCheck.m in Sources */ = {isa = PBXBuildFile; fileRef = 747DF6671E2F176A005C53A8 /* UIView+UIThreadCheck.m */; };
+ 847CAF2C1F39BB8A00551725 /* WXATLoggerPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = DCABAFF01D029685001C8592 /* WXATLoggerPlugin.m */; };
+ 847CAF2D1F39BBB900551725 /* WXScannerHistoryVC.m in Sources */ = {isa = PBXBuildFile; fileRef = DC5B53681E8CED9400E02125 /* WXScannerHistoryVC.m */; };
+ 847CAF2E1F39BBFB00551725 /* WXConfigCenterDefaultImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = DC20B8E51ECADA2500845F39 /* WXConfigCenterDefaultImpl.m */; };
+ 847CAF311F39E3F100551725 /* WXExtModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 847CAF301F39E3F100551725 /* WXExtModule.m */; };
84D7CAC71CE3266C00D48D46 /* libsqlite3.0.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 7475ACA01CD8444A0044E96C /* libsqlite3.0.tbd */; };
8A0B5EFFF75BF82EA481983D /* libPods-WeexUITestDemo.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E48C20F443AA337D1FE97622 /* libPods-WeexUITestDemo.a */; };
+ C47B78D21F299E27001D3B0C /* WXExtendCallNativeTest.m in Sources */ = {isa = PBXBuildFile; fileRef = C47B78D11F299E27001D3B0C /* WXExtendCallNativeTest.m */; };
C43CDA031F1C6E01005A6B03 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = C43CDA021F1C6E01005A6B03 /* libz.tbd */; };
DC20B8E61ECADA2500845F39 /* WXConfigCenterDefaultImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = DC20B8E51ECADA2500845F39 /* WXConfigCenterDefaultImpl.m */; };
DC5B53691E8CED9400E02125 /* WXScannerHistoryVC.m in Sources */ = {isa = PBXBuildFile; fileRef = DC5B53681E8CED9400E02125 /* WXScannerHistoryVC.m */; };
@@@ -90,9 -93,9 +94,11 @@@
775BEE981C1E8ECC008D1629 /* WeexDemoTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WeexDemoTests.m; sourceTree = "<group>"; };
775BEE9A1C1E8ECC008D1629 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
84361D751CA10F8E00F43825 /* WeexUITestDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WeexUITestDemo.app; sourceTree = BUILT_PRODUCTS_DIR; };
+ 847CAF2F1F39E3F100551725 /* WXExtModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtModule.h; sourceTree = "<group>"; };
+ 847CAF301F39E3F100551725 /* WXExtModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXExtModule.m; sourceTree = "<group>"; };
9420131417A731ED089B0814 /* Pods-WeexDemo.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WeexDemo.release.xcconfig"; path = "Pods/Target Support Files/Pods-WeexDemo/Pods-WeexDemo.release.xcconfig"; sourceTree = "<group>"; };
+ C47B78D01F299E27001D3B0C /* WXExtendCallNativeTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtendCallNativeTest.h; sourceTree = "<group>"; };
+ C47B78D11F299E27001D3B0C /* WXExtendCallNativeTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXExtendCallNativeTest.m; sourceTree = "<group>"; };
C43CDA021F1C6E01005A6B03 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; };
DC20B8E41ECADA2500845F39 /* WXConfigCenterDefaultImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXConfigCenterDefaultImpl.h; sourceTree = "<group>"; };
DC20B8E51ECADA2500845F39 /* WXConfigCenterDefaultImpl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXConfigCenterDefaultImpl.m; sourceTree = "<group>"; };
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/31c696f5/ios/playground/WeexDemo/AppDelegate.m
----------------------------------------------------------------------
diff --cc ios/playground/WeexDemo/AppDelegate.m
index d8472cd,19c702e..0414933
--- a/ios/playground/WeexDemo/AppDelegate.m
+++ b/ios/playground/WeexDemo/AppDelegate.m
@@@ -119,9 -120,9 +120,9 @@@
[WXSDKEngine registerComponent:@"select" withClass:NSClassFromString(@"WXSelectComponent")];
[WXSDKEngine registerModule:@"event" withClass:[WXEventModule class]];
[WXSDKEngine registerModule:@"syncTest" withClass:[WXSyncTestModule class]];
+ [WXSDKEngine registerExtendCallNative:@"test" withClass:NSClassFromString(@"WXExtendCallNativeTest")];
-
+ [WXSDKEngine registerModule:@"ext" withClass:[WXExtModule class]];
-
#if !(TARGET_IPHONE_SIMULATOR)
[self checkUpdate];
#endif
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/31c696f5/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
----------------------------------------------------------------------
[05/10] incubator-weex git commit: Merge branch '0.16-dev' into
ios-native-0.16-dev
Posted by kf...@apache.org.
Merge branch '0.16-dev' into ios-native-0.16-dev
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/94422355
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/94422355
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/94422355
Branch: refs/heads/0.16-dev
Commit: 944223557851cafc7dd4704e4c917d314ac23aef
Parents: 4d78365 8b9845e
Author: 齐山 <su...@163.com>
Authored: Thu Aug 10 14:27:41 2017 +0800
Committer: GitHub <no...@github.com>
Committed: Thu Aug 10 14:27:41 2017 +0800
----------------------------------------------------------------------
.gitignore | 5 +-
.../java/com/alibaba/weex/IndexActivity.java | 14 +
.../java/com/taobao/weex/WXSDKInstance.java | 11 +-
.../main/java/com/taobao/weex/WXSDKManager.java | 10 +
.../java/com/taobao/weex/bridge/WXBridge.java | 8 +-
.../com/taobao/weex/bridge/WXBridgeManager.java | 36 +-
.../taobao/weex/bridge/WXValidateProcessor.java | 7 +-
.../taobao/weex/common/WXWorkThreadManager.java | 48 +
.../java/com/taobao/weex/dom/WXDomObject.java | 17 +-
.../dom/action/AbstractAddElementAction.java | 2 +-
.../com/taobao/weex/ui/component/WXImage.java | 68 +
.../ui/component/list/BasicListComponent.java | 15 +-
.../taobao/weex/utils/WXViewToImageUtil.java | 151 +
build/build.js | 106 +-
build/config.js | 54 +-
build/karma.vue.conf.js | 2 +-
dangerfile.js | 79 +-
entry.js | 11 +
examples/vue/components/scroller.vue | 9 +-
examples/vue/index.vue | 1 +
examples/vue/modules/picker.vue | 64 +
html5/frameworks/legacy/core/array.js | 4 +
html5/frameworks/legacy/core/object.js | 6 +
html5/frameworks/legacy/static/create.js | 7 +-
html5/frameworks/legacy/vm/directive.js | 6 +
html5/frameworks/vanilla/index.js | 35 +-
html5/render/vue/README.md | 92 +
html5/render/vue/components/a.js | 90 +-
html5/render/vue/components/div.js | 43 +-
html5/render/vue/components/image.js | 76 +-
html5/render/vue/components/index.js | 37 +-
html5/render/vue/components/input.js | 130 +-
html5/render/vue/components/scrollable/cell.js | 39 +
.../render/vue/components/scrollable/header.js | 102 +-
html5/render/vue/components/scrollable/index.js | 48 +
html5/render/vue/components/scrollable/list.js | 82 +
.../vue/components/scrollable/list/cell.js | 36 -
.../vue/components/scrollable/list/index.js | 77 -
.../vue/components/scrollable/list/listMixin.js | 47 -
.../vue/components/scrollable/list/style.js | 34 -
.../components/scrollable/loading-indicator.js | 17 +-
.../render/vue/components/scrollable/loading.js | 141 +-
.../vue/components/scrollable/mixins/index.js | 26 +
.../vue/components/scrollable/mixins/list.js | 46 +
.../components/scrollable/mixins/scrollable.js | 267 +
.../render/vue/components/scrollable/refresh.js | 157 +-
.../vue/components/scrollable/scroller.js | 143 +-
.../render/vue/components/scrollable/style.css | 90 +
.../vue/components/scrollable/waterfall.js | 573 +-
html5/render/vue/components/slider/index.js | 52 +-
html5/render/vue/components/slider/indicator.js | 18 +-
.../render/vue/components/slider/slideMixin.js | 46 +-
.../vue/components/slider/slider-neighbor.js | 12 +-
html5/render/vue/components/slider/slider.css | 19 +
html5/render/vue/components/slider/slider.js | 75 +
html5/render/vue/components/switch.js | 114 +-
html5/render/vue/components/text.js | 52 +-
html5/render/vue/components/textarea.js | 104 +-
html5/render/vue/components/video.js | 107 +-
html5/render/vue/components/web.js | 98 +-
html5/render/vue/config.js | 10 +-
html5/render/vue/core/node.js | 27 +-
html5/render/vue/core/style.js | 35 -
html5/render/vue/env/global.js | 6 +
html5/render/vue/env/index.js | 5 -
html5/render/vue/index.js | 25 -
html5/render/vue/lib/gesture.js | 6 +
html5/render/vue/mixins/base.js | 71 -
html5/render/vue/mixins/index.js | 2 -
html5/render/vue/mixins/scrollable.js | 233 -
html5/render/vue/mixins/style.js | 4 +-
html5/render/vue/modules/animation.js | 36 +-
html5/render/vue/modules/dom.js | 96 +-
html5/render/vue/modules/globalEvent.js | 8 +-
html5/render/vue/modules/index.js | 36 +-
html5/render/vue/modules/modal/toast.js | 23 +-
html5/render/vue/modules/navigator.js | 10 +-
html5/render/vue/modules/webview.js | 18 +-
html5/render/vue/styles/base.css | 86 +-
html5/render/vue/styles/reset.css | 19 +
html5/render/vue/utils/lazyload.js | 24 +-
html5/render/vue/utils/perf.js | 283 +-
html5/runtime/callback-manager.js | 12 +-
html5/runtime/config.js | 5 +-
html5/runtime/normalize.js | 107 +
html5/runtime/task-center.js | 61 +-
html5/runtime/vdom/document.js | 2 +
html5/runtime/vdom/element.js | 15 +-
html5/test/render/vue/components/list.js | 2 +-
html5/test/render/vue/components/switch.js | 5 +-
html5/test/render/vue/core/node.js | 2 +
html5/test/render/vue/examples/list-cell.js | 2 +-
html5/test/render/vue/helper/index.js | 2 +-
html5/test/render/vue/helper/main.js | 3 +-
html5/test/render/vue/helper/utils.js | 4 +
html5/test/render/vue/modules/animation.js | 12 +-
html5/test/render/vue/modules/dom.js | 27 +-
html5/test/render/vue/modules/globalEvent.js | 8 +-
html5/test/render/vue/modules/navigator.js | 8 +-
html5/test/render/vue/modules/webview.js | 10 +-
html5/test/render/vue/utils/lazyload.js | 59 +-
html5/test/render/vue/utils/perf.js | 94 +-
html5/test/render/vue/utils/style.js | 50 +-
ios/.gitignore | 1 +
ios/playground/Podfile | 2 +-
.../WeexDemo.xcodeproj/project.pbxproj | 24 +-
ios/playground/WeexDemo/AppDelegate.m | 8 +-
ios/playground/WeexDemo/Info.plist | 4 +
ios/playground/WeexDemo/WXDemoViewController.m | 2 -
ios/playground/WeexDemo/WXExtModule.h | 26 +
ios/playground/WeexDemo/WXExtModule.m | 43 +
ios/sdk/WeexSDK.xcodeproj/project.pbxproj | 16 +-
.../Component/Recycler/WXRecyclerComponent.m | 58 +-
.../Recycler/WXRecyclerDragController.h | 52 +
.../Recycler/WXRecyclerDragController.m | 208 +
.../WeexSDK/Sources/Component/WXAComponent.m | 1 +
.../WeexSDK/Sources/Component/WXEditComponent.m | 11 +-
.../Sources/Component/WXImageComponent.m | 239 +-
.../Sources/Component/WXTextAreaComponent.m | 2 +-
ios/sdk/WeexSDK/Sources/Component/WXTransform.h | 1 +
ios/sdk/WeexSDK/Sources/Component/WXTransform.m | 33 +-
.../Sources/Component/WXVideoComponent.m | 1 +
.../WeexSDK/Sources/Component/WXWebComponent.m | 1 +
.../WeexSDK/Sources/Loader/WXResourceLoader.m | 2 +-
ios/sdk/WeexSDK/Sources/Manager/WXRuleManager.m | 1 +
ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m | 1 +
.../WeexSDK/Sources/Module/WXAnimationModule.m | 5 +
ios/sdk/WeexSDK/Sources/Module/WXStreamModule.m | 1 +
.../WeexSDK/Sources/Module/WXWebSocketModule.h | 1 -
.../WeexSDK/Sources/Module/WXWebSocketModule.m | 1 +
.../Sources/Network/WXResourceResponse.h | 2 +-
.../Sources/Protocol/WXURLRewriteProtocol.h | 2 +-
ios/sdk/WeexSDK/Sources/Utility/WXDefine.h | 2 +
ios/sdk/WeexSDK/Sources/WeexSDK.h | 1 +
package.json | 35 +-
packages/weex-js-framework/.npmignore | 4 +
packages/weex-js-framework/index.js | 25150 +++++++++++++++++
packages/weex-js-framework/index.min.js | 1 +
packages/weex-js-framework/package.json | 22 +
packages/weex-js-runtime/.npmignore | 4 +
packages/weex-js-runtime/index.js | 3906 +++
packages/weex-js-runtime/index.min.js | 1 +
packages/weex-js-runtime/index.min.js.gz | Bin 0 -> 12588 bytes
packages/weex-js-runtime/package.json | 22 +
packages/weex-legacy-framework/.npmignore | 4 +
packages/weex-legacy-framework/index.js | 5770 ++++
packages/weex-legacy-framework/index.min.js | 1 +
packages/weex-legacy-framework/package.json | 22 +
packages/weex-vue-plugins/weex-vue-a/README.md | 3 +
.../weex-vue-plugins/weex-vue-a/package.json | 26 +
.../weex-vue-plugins/weex-vue-a/src/index.js | 2 +
.../weex-vue-animation/README.md | 3 +
.../weex-vue-animation/package.json | 27 +
.../weex-vue-animation/src/index.js | 2 +
.../weex-vue-clipboard/README.md | 3 +
.../weex-vue-clipboard/package.json | 27 +
.../weex-vue-clipboard/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-dom/README.md | 3 +
.../weex-vue-plugins/weex-vue-dom/package.json | 27 +
.../weex-vue-plugins/weex-vue-dom/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-event/README.md | 3 +
.../weex-vue-event/package.json | 27 +
.../weex-vue-event/src/index.js | 2 +
.../weex-vue-geolocation/README.md | 3 +
.../weex-vue-geolocation/package.json | 27 +
.../weex-vue-geolocation/src/index.js | 2 +
.../weex-vue-global-event/README.md | 3 +
.../weex-vue-global-event/package.json | 27 +
.../weex-vue-global-event/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-input/README.md | 3 +
.../weex-vue-input/package.json | 26 +
.../weex-vue-input/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-modal/README.md | 3 +
.../weex-vue-modal/package.json | 27 +
.../weex-vue-modal/src/index.js | 2 +
.../weex-vue-navigator/README.md | 3 +
.../weex-vue-navigator/package.json | 27 +
.../weex-vue-navigator/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-slider/README.md | 3 +
.../weex-vue-slider/package.json | 27 +
.../weex-vue-slider/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-storage/README.md | 3 +
.../weex-vue-storage/package.json | 27 +
.../weex-vue-storage/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-stream/README.md | 3 +
.../weex-vue-stream/package.json | 27 +
.../weex-vue-stream/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-switch/README.md | 3 +
.../weex-vue-switch/package.json | 26 +
.../weex-vue-switch/src/index.js | 2 +
.../weex-vue-textarea/.DS_Store | Bin 0 -> 6148 bytes
.../weex-vue-textarea/README.md | 3 +
.../weex-vue-textarea/package.json | 26 +
.../weex-vue-textarea/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-video/README.md | 3 +
.../weex-vue-video/package.json | 26 +
.../weex-vue-video/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-web/README.md | 3 +
.../weex-vue-plugins/weex-vue-web/package.json | 26 +
.../weex-vue-plugins/weex-vue-web/src/index.js | 2 +
.../weex-vue-websocket/README.md | 3 +
.../weex-vue-websocket/package.json | 27 +
.../weex-vue-websocket/src/index.js | 2 +
.../weex-vue-plugins/weex-vue-webview/README.md | 3 +
.../weex-vue-webview/package.json | 27 +
.../weex-vue-webview/src/index.js | 2 +
packages/weex-vue-render/README.md | 92 +
packages/weex-vue-render/package.json | 9 +-
packages/weex-vue-render/src/index.core.js | 13 +
packages/weex-vue-render/src/index.js | 12 +
pre-build/native-bundle-main.js | 16 +-
scripts/commit-msg.sh | 2 +-
scripts/dist-vue.sh | 2 +-
test/pages/components/hyperlink_target.vue | 1 +
test/pages/components/iconfont.vue | 71 +
test/pages/components/input-event.vue | 65 +
test/pages/components/refresh-loading.vue | 115 +
test/pages/components/switch-event.vue | 60 +
test/pages/components/web-event.vue | 56 +
test/pages/image-onload.vue | 14 +-
test/pages/include/button.vue | 162 +
test/pages/include/h1.vue | 13 +
test/pages/include/h2.vue | 13 +
test/pages/include/h3.vue | 13 +
test/pages/include/hn.vue | 47 +
test/pages/include/panel.vue | 141 +
test/pages/include/wxc-desc.vue | 66 +
test/pages/modules/animation-translate.vue | 129 +
test/pages/modules/clipboard-event.vue | 57 +
test/pages/modules/cover-generate.vue | 53 +
test/pages/modules/downgrade-event.vue | 74 +
test/pages/modules/gesture-longpress.vue | 75 +
test/pages/modules/modal-event.vue | 61 +
test/pages/modules/picker-event.vue | 63 +
test/pages/modules/storage-event.vue | 59 +
test/pages/modules/stream-result.vue | 85 +
test/run.sh | 30 +-
test/screenshot/border-android.png | Bin 156247 -> 158634 bytes
test/scripts/components/iconfont.test.js | 34 +
test/scripts/components/image-onload.test.js | 10 +
test/scripts/components/input-event.test.js | 36 +
test/scripts/components/refresh-loading.test.js | 38 +
test/scripts/components/switch-event.test.js | 38 +
test/scripts/components/web-event.test.js | 30 +
.../scripts/modules/animation-translate.test.js | 40 +
test/scripts/modules/clipboard-event.test.js | 35 +
test/scripts/modules/downgrade-event.test.js | 30 +
test/scripts/modules/gesture-longpress.test.js | 37 +
test/scripts/modules/modal-event.test.js | 35 +
test/scripts/modules/picker-event.test.js | 41 +
test/scripts/modules/storage-event.test.js | 36 +
test/scripts/modules/stream-result.test.js | 34 +
test/scripts/util.js | 41 +
test/scripts/zcover-generate.js | 32 +
test/serve.sh | 2 +-
vue.html | 11 +-
256 files changed, 41438 insertions(+), 2506 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/94422355/ios/playground/WeexDemo.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --cc ios/playground/WeexDemo.xcodeproj/project.pbxproj
index 7cfcbd8,1943c69..5c56412
--- a/ios/playground/WeexDemo.xcodeproj/project.pbxproj
+++ b/ios/playground/WeexDemo.xcodeproj/project.pbxproj
@@@ -28,9 -28,13 +28,14 @@@
84361D5B1CA10F8E00F43825 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 775BEE8A1C1E8ECC008D1629 /* Assets.xcassets */; };
846FC8DA1E1B853100949E7D /* WXSyncTestModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 7478481D1E0CD4910044500D /* WXSyncTestModule.m */; };
846FC8DB1E1B853600949E7D /* WXATViewHierarchyPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = DCABAFF21D029685001C8592 /* WXATViewHierarchyPlugin.m */; };
+ 847CAF2B1F39BB6B00551725 /* UIView+UIThreadCheck.m in Sources */ = {isa = PBXBuildFile; fileRef = 747DF6671E2F176A005C53A8 /* UIView+UIThreadCheck.m */; };
+ 847CAF2C1F39BB8A00551725 /* WXATLoggerPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = DCABAFF01D029685001C8592 /* WXATLoggerPlugin.m */; };
+ 847CAF2D1F39BBB900551725 /* WXScannerHistoryVC.m in Sources */ = {isa = PBXBuildFile; fileRef = DC5B53681E8CED9400E02125 /* WXScannerHistoryVC.m */; };
+ 847CAF2E1F39BBFB00551725 /* WXConfigCenterDefaultImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = DC20B8E51ECADA2500845F39 /* WXConfigCenterDefaultImpl.m */; };
+ 847CAF311F39E3F100551725 /* WXExtModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 847CAF301F39E3F100551725 /* WXExtModule.m */; };
84D7CAC71CE3266C00D48D46 /* libsqlite3.0.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 7475ACA01CD8444A0044E96C /* libsqlite3.0.tbd */; };
8A0B5EFFF75BF82EA481983D /* libPods-WeexUITestDemo.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E48C20F443AA337D1FE97622 /* libPods-WeexUITestDemo.a */; };
+ C47B78D21F299E27001D3B0C /* WXExtendCallNativeTest.m in Sources */ = {isa = PBXBuildFile; fileRef = C47B78D11F299E27001D3B0C /* WXExtendCallNativeTest.m */; };
C43CDA031F1C6E01005A6B03 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = C43CDA021F1C6E01005A6B03 /* libz.tbd */; };
DC20B8E61ECADA2500845F39 /* WXConfigCenterDefaultImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = DC20B8E51ECADA2500845F39 /* WXConfigCenterDefaultImpl.m */; };
DC5B53691E8CED9400E02125 /* WXScannerHistoryVC.m in Sources */ = {isa = PBXBuildFile; fileRef = DC5B53681E8CED9400E02125 /* WXScannerHistoryVC.m */; };
@@@ -90,9 -93,9 +94,11 @@@
775BEE981C1E8ECC008D1629 /* WeexDemoTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WeexDemoTests.m; sourceTree = "<group>"; };
775BEE9A1C1E8ECC008D1629 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
84361D751CA10F8E00F43825 /* WeexUITestDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WeexUITestDemo.app; sourceTree = BUILT_PRODUCTS_DIR; };
+ 847CAF2F1F39E3F100551725 /* WXExtModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtModule.h; sourceTree = "<group>"; };
+ 847CAF301F39E3F100551725 /* WXExtModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXExtModule.m; sourceTree = "<group>"; };
9420131417A731ED089B0814 /* Pods-WeexDemo.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WeexDemo.release.xcconfig"; path = "Pods/Target Support Files/Pods-WeexDemo/Pods-WeexDemo.release.xcconfig"; sourceTree = "<group>"; };
+ C47B78D01F299E27001D3B0C /* WXExtendCallNativeTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtendCallNativeTest.h; sourceTree = "<group>"; };
+ C47B78D11F299E27001D3B0C /* WXExtendCallNativeTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXExtendCallNativeTest.m; sourceTree = "<group>"; };
C43CDA021F1C6E01005A6B03 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; };
DC20B8E41ECADA2500845F39 /* WXConfigCenterDefaultImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXConfigCenterDefaultImpl.h; sourceTree = "<group>"; };
DC20B8E51ECADA2500845F39 /* WXConfigCenterDefaultImpl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXConfigCenterDefaultImpl.m; sourceTree = "<group>"; };
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/94422355/ios/playground/WeexDemo/AppDelegate.m
----------------------------------------------------------------------
diff --cc ios/playground/WeexDemo/AppDelegate.m
index d8472cd,19c702e..0414933
--- a/ios/playground/WeexDemo/AppDelegate.m
+++ b/ios/playground/WeexDemo/AppDelegate.m
@@@ -119,9 -120,9 +120,9 @@@
[WXSDKEngine registerComponent:@"select" withClass:NSClassFromString(@"WXSelectComponent")];
[WXSDKEngine registerModule:@"event" withClass:[WXEventModule class]];
[WXSDKEngine registerModule:@"syncTest" withClass:[WXSyncTestModule class]];
+ [WXSDKEngine registerExtendCallNative:@"test" withClass:NSClassFromString(@"WXExtendCallNativeTest")];
-
+ [WXSDKEngine registerModule:@"ext" withClass:[WXExtModule class]];
-
#if !(TARGET_IPHONE_SIMULATOR)
[self checkUpdate];
#endif
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/94422355/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
----------------------------------------------------------------------
[08/10] incubator-weex git commit: Merge branch 'ios-native-0.16-dev'
of https://github.com/kfeagle/incubator-weex into ios-native-0.16-dev
Posted by kf...@apache.org.
Merge branch 'ios-native-0.16-dev' of https://github.com/kfeagle/incubator-weex into ios-native-0.16-dev
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/abee137b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/abee137b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/abee137b
Branch: refs/heads/0.16-dev
Commit: abee137ba167f9903b26370e60a5f7c68b6dc91d
Parents: 31c696f 9442235
Author: 齐山 <su...@163.com>
Authored: Thu Aug 10 16:41:53 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Thu Aug 10 16:41:53 2017 +0800
----------------------------------------------------------------------
----------------------------------------------------------------------
[04/10] incubator-weex git commit: + [ios] update native logic
Posted by kf...@apache.org.
+ [ios] update native logic
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/4d78365d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/4d78365d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/4d78365d
Branch: refs/heads/0.16-dev
Commit: 4d78365d0099bebd598351959ac0c4a0e0a30dc0
Parents: 5100991
Author: 齐山 <su...@163.com>
Authored: Tue Aug 8 16:38:23 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Tue Aug 8 16:38:23 2017 +0800
----------------------------------------------------------------------
examples/vue/hello.vue | 2 +-
ios/playground/WeexDemo/AppDelegate.m | 2 +
ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.h | 10 +++++
ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m | 6 +++
.../Sources/Manager/WXExtendCallNativeManager.h | 5 ++-
.../Sources/Manager/WXExtendCallNativeManager.m | 45 +++++++++++++++++++-
6 files changed, 65 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4d78365d/examples/vue/hello.vue
----------------------------------------------------------------------
diff --git a/examples/vue/hello.vue b/examples/vue/hello.vue
index e387e5a..8309aaa 100644
--- a/examples/vue/hello.vue
+++ b/examples/vue/hello.vue
@@ -41,7 +41,7 @@
this.target = 'Weex'
console.log('target:', this.target)
var dict = extendCallNative({
- 'className':'WXExtendCallNativeTest'
+ 'className':'test'
})
modal.toast({
'message': dict['value'],
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4d78365d/ios/playground/WeexDemo/AppDelegate.m
----------------------------------------------------------------------
diff --git a/ios/playground/WeexDemo/AppDelegate.m b/ios/playground/WeexDemo/AppDelegate.m
index 4d9b9cd..d8472cd 100644
--- a/ios/playground/WeexDemo/AppDelegate.m
+++ b/ios/playground/WeexDemo/AppDelegate.m
@@ -119,6 +119,8 @@
[WXSDKEngine registerComponent:@"select" withClass:NSClassFromString(@"WXSelectComponent")];
[WXSDKEngine registerModule:@"event" withClass:[WXEventModule class]];
[WXSDKEngine registerModule:@"syncTest" withClass:[WXSyncTestModule class]];
+ [WXSDKEngine registerExtendCallNative:@"test" withClass:NSClassFromString(@"WXExtendCallNativeTest")];
+
#if !(TARGET_IPHONE_SIMULATOR)
[self checkUpdate];
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4d78365d/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.h
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.h b/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.h
index 32a26d1..5e7b1e7 100644
--- a/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.h
+++ b/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.h
@@ -49,6 +49,16 @@
+ (void)registerComponent:(NSString *)name withClass:(Class)clazz;
/**
+ * @abstract Registers a extendCallNative Class for a given name
+ *
+ * @param name The extendCallNative name to register
+ *
+ * @param clazz The extendCallNative subclass to register
+ *
+ **/
++ (void)registerExtendCallNative:(NSString *)name withClass:(Class)clazz;
+
+/**
* @abstract Registers a component for a given name and specific properties
*
* @param name The component name to register
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4d78365d/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m b/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m
index b95ad9d..7e8d99c 100644
--- a/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m
+++ b/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m
@@ -37,6 +37,7 @@
#import "WXAssert.h"
#import "WXLog.h"
#import "WXUtility.h"
+#import "WXExtendCallNativeManager.h"
@implementation WXSDKEngine
@@ -114,6 +115,11 @@
[self registerComponent:name withClass:clazz withProperties: @{@"append":@"tree"}];
}
++ (void)registerExtendCallNative:(NSString *)name withClass:(Class)clazz
+{
+ [WXExtendCallNativeManager registerExtendCallNative:name withClass:clazz];
+}
+
+ (void)registerComponent:(NSString *)name withClass:(Class)clazz withProperties:(NSDictionary *)properties
{
if (!name || !clazz) {
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4d78365d/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
index 20c3e7d..cb5fea6 100644
--- a/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
+++ b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
@@ -10,6 +10,7 @@
@interface WXExtendCallNativeManager : NSObject
-+(id)sendExtendCallNativeEvent:(NSDictionary *)parameters;
-
++ (id)sendExtendCallNativeEvent:(NSDictionary *)parameters;
++ (void)registerExtendCallNative:(NSString *)name withClass:(Class)clazz;
++ (Class)classWithComponentName:(NSString *)name;
@end
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4d78365d/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
index 6fbdd02..58a7cdd 100644
--- a/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
+++ b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
@@ -10,13 +10,54 @@
#import "WXExtendCallNativeProtocol.h"
#import <objc/runtime.h>
+@interface WXExtendCallNativeManager ()
+
+@property (nonatomic, strong) NSMutableDictionary *names;
+
+@end
+
@implementation WXExtendCallNativeManager
+{
+ NSLock *_configLock;
+}
++ (instancetype) sharedInstance{
+
+ static WXExtendCallNativeManager *instance = nil;
+ static dispatch_once_t once;
+
+ dispatch_once(&once, ^{
+ instance = [[WXExtendCallNativeManager alloc] initPrivate];
+ });
+
+ return instance;
+}
+
+- (instancetype) initPrivate{
+ self = [super init];
+ if(self){
+ _configLock = [[NSLock alloc] init];
+ self.names = [NSMutableDictionary new];
+ }
+
+ return self;
+}
+
++ (void)registerExtendCallNative:(NSString *)name withClass:(Class)clazz
+{
+ [[WXExtendCallNativeManager sharedInstance].names setObject:NSStringFromClass(clazz) forKey:name];
+}
+
++ (Class)classWithExtendCallNativeName:(NSString *)name
+{
+ NSString *clazz = [[WXExtendCallNativeManager sharedInstance].names objectForKey:name];
+ return NSClassFromString(clazz);
+}
+(id)sendExtendCallNativeEvent:(NSDictionary *)parameters
{
if(parameters[@"className"]){
- Class<WXExtendCallNativeProtocol> receiveClass = NSClassFromString(parameters[@"className"]);
- if(class_conformsToProtocol(receiveClass,@protocol(WXExtendCallNativeProtocol))){
+ Class<WXExtendCallNativeProtocol> receiveClass = [self classWithExtendCallNativeName:parameters[@"className"]];
+ if(receiveClass && class_conformsToProtocol(receiveClass,@protocol(WXExtendCallNativeProtocol))){
BOOL receivedItem = [receiveClass checkParameters:parameters];
if(receivedItem){
return [receiveClass excuteCallNative:parameters];
[10/10] incubator-weex git commit: Merge branch '0.16-dev' of
https://git-wip-us.apache.org/repos/asf/incubator-weex into
ios-native-0.16-dev
Posted by kf...@apache.org.
Merge branch '0.16-dev' of https://git-wip-us.apache.org/repos/asf/incubator-weex into ios-native-0.16-dev
# Conflicts:
# ios/sdk/WeexSDK.xcodeproj/project.pbxproj
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/4bf47ed4
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/4bf47ed4
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/4bf47ed4
Branch: refs/heads/0.16-dev
Commit: 4bf47ed4131b2d027bdc772dd41462e986e22ce4
Parents: 4df48bc d1bdd73
Author: 齐山 <su...@163.com>
Authored: Thu Aug 10 20:43:58 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Thu Aug 10 20:43:58 2017 +0800
----------------------------------------------------------------------
examples/vue/modules/websocket.vue | 22 ++-
ios/sdk/WeexSDK.xcodeproj/project.pbxproj | 10 ++
.../WeexSDK/Sources/Bridge/WXBridgeContext.m | 35 ++--
ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m | 10 +-
.../Sources/Component/WXScrollerComponent.m | 3 +-
.../WeexSDK/Sources/Component/WXTextComponent.m | 5 +-
ios/sdk/WeexSDK/Sources/Debug/WXDebugTool.h | 4 +
ios/sdk/WeexSDK/Sources/Debug/WXDebugTool.m | 10 ++
.../WeexSDK/Sources/Loader/WXWebSocketLoader.h | 2 +-
.../WeexSDK/Sources/Loader/WXWebSocketLoader.m | 2 +-
.../WeexSDK/Sources/Manager/WXBridgeManager.m | 4 +
.../Sources/Manager/WXComponentFactory.h | 1 +
.../Sources/Manager/WXComponentFactory.m | 23 +++
.../Sources/Manager/WXComponentManager.m | 18 +-
.../WeexSDK/Sources/Manager/WXModuleFactory.h | 6 +
.../WeexSDK/Sources/Manager/WXModuleFactory.m | 24 +++
.../WeexSDK/Sources/Manager/WXTracingManager.h | 33 +++-
.../WeexSDK/Sources/Manager/WXTracingManager.m | 169 ++++++++++++++++---
ios/sdk/WeexSDK/Sources/Model/WXComponent.m | 1 -
ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m | 6 +-
ios/sdk/WeexSDK/Sources/Module/WXStreamModule.m | 13 ++
.../WeexSDK/Sources/Module/WXWebSocketModule.m | 16 +-
ios/sdk/WeexSDK/Sources/Monitor/WXMonitor.m | 9 +
.../Sources/Protocol/WXAppMonitorProtocol.h | 2 +
.../Sources/Protocol/WXTracingProtocol.h | 29 ++++
ios/sdk/WeexSDK/Sources/Utility/WXUtility.h | 12 ++
ios/sdk/WeexSDK/Sources/Utility/WXUtility.m | 22 +++
.../Sources/View/WXComponent+ViewManagement.m | 1 -
.../Sources/WebSocket/WXWebSocketDefaultImpl.m | 2 +-
ios/sdk/WeexSDK/Sources/WeexSDK.h | 1 +
30 files changed, 428 insertions(+), 67 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4bf47ed4/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --cc ios/sdk/WeexSDK.xcodeproj/project.pbxproj
index 7f19a7c,336161c..809c2a6
--- a/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
+++ b/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
@@@ -236,16 -236,10 +236,18 @@@
C401945E1E344E8300D19C31 /* WXFloatCompareTests.m in Sources */ = {isa = PBXBuildFile; fileRef = C401945D1E344E8300D19C31 /* WXFloatCompareTests.m */; };
C41E1A971DC1FD15009C7F90 /* WXDatePickerManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C41E1A951DC1FD15009C7F90 /* WXDatePickerManager.h */; };
C41E1A981DC1FD15009C7F90 /* WXDatePickerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C41E1A961DC1FD15009C7F90 /* WXDatePickerManager.m */; };
+ C42E8FAB1F3C7C09001EBE9D /* WXExtendCallNativeProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ C42E8FAC1F3C7C3B001EBE9D /* WXExtendCallNativeManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C47B78CD1F2998EE001D3B0C /* WXExtendCallNativeManager.m */; };
+ C42E8FAD1F3C7C3F001EBE9D /* WXExtendCallNativeManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C47B78CC1F2998EE001D3B0C /* WXExtendCallNativeManager.h */; };
+ C42E8FAE1F3C7C49001EBE9D /* WXRecyclerDragController.m in Sources */ = {isa = PBXBuildFile; fileRef = DC7764911F3C2CA300B5727E /* WXRecyclerDragController.m */; };
+ C42E8FAF1F3C7C4B001EBE9D /* WXRecyclerDragController.h in Headers */ = {isa = PBXBuildFile; fileRef = DC7764921F3C2CA300B5727E /* WXRecyclerDragController.h */; };
+ C42E8F9B1F39DF07001EBE9D /* WXTracingProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = C42E8F991F39DF07001EBE9D /* WXTracingProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ C42E8FAA1F3C7AA1001EBE9D /* WXTracingProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = C42E8F991F39DF07001EBE9D /* WXTracingProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
C43C03E81EC8ACA40044C7FF /* WXPrerenderManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C43C03E41EC8ACA40044C7FF /* WXPrerenderManager.h */; settings = {ATTRIBUTES = (Public, ); }; };
C43C03E91EC8ACA40044C7FF /* WXPrerenderManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C43C03E51EC8ACA40044C7FF /* WXPrerenderManager.m */; };
+ C4424E5B1F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ C47B78CE1F2998EE001D3B0C /* WXExtendCallNativeManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C47B78CC1F2998EE001D3B0C /* WXExtendCallNativeManager.h */; };
+ C47B78CF1F2998EE001D3B0C /* WXExtendCallNativeManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C47B78CD1F2998EE001D3B0C /* WXExtendCallNativeManager.m */; };
C4B3D6D41E6954300013F38D /* WXEditComponent.h in Headers */ = {isa = PBXBuildFile; fileRef = C4B3D6D21E6954300013F38D /* WXEditComponent.h */; };
C4B3D6D51E6954300013F38D /* WXEditComponent.m in Sources */ = {isa = PBXBuildFile; fileRef = C4B3D6D31E6954300013F38D /* WXEditComponent.m */; };
C4B834271DE69B09007AD27E /* WXPickerModule.m in Sources */ = {isa = PBXBuildFile; fileRef = C4B834251DE69B09007AD27E /* WXPickerModule.m */; };
@@@ -810,11 -806,9 +814,12 @@@
C401945D1E344E8300D19C31 /* WXFloatCompareTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXFloatCompareTests.m; sourceTree = "<group>"; };
C41E1A951DC1FD15009C7F90 /* WXDatePickerManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXDatePickerManager.h; sourceTree = "<group>"; };
C41E1A961DC1FD15009C7F90 /* WXDatePickerManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXDatePickerManager.m; sourceTree = "<group>"; };
+ C42E8F991F39DF07001EBE9D /* WXTracingProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXTracingProtocol.h; sourceTree = "<group>"; };
C43C03E41EC8ACA40044C7FF /* WXPrerenderManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXPrerenderManager.h; sourceTree = "<group>"; };
C43C03E51EC8ACA40044C7FF /* WXPrerenderManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXPrerenderManager.m; sourceTree = "<group>"; };
+ C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtendCallNativeProtocol.h; sourceTree = "<group>"; };
+ C47B78CC1F2998EE001D3B0C /* WXExtendCallNativeManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtendCallNativeManager.h; sourceTree = "<group>"; };
+ C47B78CD1F2998EE001D3B0C /* WXExtendCallNativeManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXExtendCallNativeManager.m; sourceTree = "<group>"; };
C4B3D6D21E6954300013F38D /* WXEditComponent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXEditComponent.h; sourceTree = "<group>"; };
C4B3D6D31E6954300013F38D /* WXEditComponent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXEditComponent.m; sourceTree = "<group>"; };
C4B834251DE69B09007AD27E /* WXPickerModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXPickerModule.m; sourceTree = "<group>"; };
@@@ -1285,7 -1277,7 +1290,8 @@@
74EF31A91DE58AE600667A07 /* WXURLRewriteProtocol.h */,
042013AC1E66CD6A001FC79C /* WXValidateProtocol.h */,
DC6836E51EBB12B200AD2D84 /* WXConfigCenterProtocol.h */,
+ C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */,
+ C42E8F991F39DF07001EBE9D /* WXTracingProtocol.h */,
);
path = Protocol;
sourceTree = "<group>";
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4bf47ed4/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4bf47ed4/ios/sdk/WeexSDK/Sources/WeexSDK.h
----------------------------------------------------------------------
[09/10] incubator-weex git commit: + [ios] add file to weexsdk
@notdanger
Posted by kf...@apache.org.
+ [ios] add file to weexsdk @notdanger
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/4df48bcc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/4df48bcc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/4df48bcc
Branch: refs/heads/0.16-dev
Commit: 4df48bccd61ca4ccadb26861dd8a98036024f25d
Parents: abee137
Author: 齐山 <su...@163.com>
Authored: Thu Aug 10 19:36:38 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Thu Aug 10 19:36:38 2017 +0800
----------------------------------------------------------------------
ios/sdk/WeexSDK.xcodeproj/project.pbxproj | 12 +++++++++++-
ios/sdk/WeexSDK/Sources/WeexSDK.h | 1 +
2 files changed, 12 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4df48bcc/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK.xcodeproj/project.pbxproj b/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
index 1164250..7f19a7c 100644
--- a/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
+++ b/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
@@ -236,9 +236,14 @@
C401945E1E344E8300D19C31 /* WXFloatCompareTests.m in Sources */ = {isa = PBXBuildFile; fileRef = C401945D1E344E8300D19C31 /* WXFloatCompareTests.m */; };
C41E1A971DC1FD15009C7F90 /* WXDatePickerManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C41E1A951DC1FD15009C7F90 /* WXDatePickerManager.h */; };
C41E1A981DC1FD15009C7F90 /* WXDatePickerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C41E1A961DC1FD15009C7F90 /* WXDatePickerManager.m */; };
+ C42E8FAB1F3C7C09001EBE9D /* WXExtendCallNativeProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ C42E8FAC1F3C7C3B001EBE9D /* WXExtendCallNativeManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C47B78CD1F2998EE001D3B0C /* WXExtendCallNativeManager.m */; };
+ C42E8FAD1F3C7C3F001EBE9D /* WXExtendCallNativeManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C47B78CC1F2998EE001D3B0C /* WXExtendCallNativeManager.h */; };
+ C42E8FAE1F3C7C49001EBE9D /* WXRecyclerDragController.m in Sources */ = {isa = PBXBuildFile; fileRef = DC7764911F3C2CA300B5727E /* WXRecyclerDragController.m */; };
+ C42E8FAF1F3C7C4B001EBE9D /* WXRecyclerDragController.h in Headers */ = {isa = PBXBuildFile; fileRef = DC7764921F3C2CA300B5727E /* WXRecyclerDragController.h */; };
C43C03E81EC8ACA40044C7FF /* WXPrerenderManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C43C03E41EC8ACA40044C7FF /* WXPrerenderManager.h */; settings = {ATTRIBUTES = (Public, ); }; };
C43C03E91EC8ACA40044C7FF /* WXPrerenderManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C43C03E51EC8ACA40044C7FF /* WXPrerenderManager.m */; };
- C4424E5B1F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */; };
+ C4424E5B1F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
C47B78CE1F2998EE001D3B0C /* WXExtendCallNativeManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C47B78CC1F2998EE001D3B0C /* WXExtendCallNativeManager.h */; };
C47B78CF1F2998EE001D3B0C /* WXExtendCallNativeManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C47B78CD1F2998EE001D3B0C /* WXExtendCallNativeManager.m */; };
C4B3D6D41E6954300013F38D /* WXEditComponent.h in Headers */ = {isa = PBXBuildFile; fileRef = C4B3D6D21E6954300013F38D /* WXEditComponent.h */; };
@@ -1652,6 +1657,7 @@
DCA445B21EFA576D00D0CFA8 /* WXListComponent.h in Headers */,
DCA445A51EFA571600D0CFA8 /* WXSDKError.h in Headers */,
DCA445AD1EFA575100D0CFA8 /* WXNavigationProtocol.h in Headers */,
+ C42E8FAF1F3C7C4B001EBE9D /* WXRecyclerDragController.h in Headers */,
DCA445B01EFA576200D0CFA8 /* WXModalUIModule.h in Headers */,
DCA445A61EFA571E00D0CFA8 /* WXSDKEngine.h in Headers */,
DCA445AA1EFA573900D0CFA8 /* WXResourceRequest.h in Headers */,
@@ -1703,6 +1709,7 @@
DCA4461F1EFA5AB100D0CFA8 /* WXRuleManager.h in Headers */,
DCA445E31EFA59DA00D0CFA8 /* WXEmbedComponent.h in Headers */,
DCA445DF1EFA59BC00D0CFA8 /* WXLoadingComponent.h in Headers */,
+ C42E8FAD1F3C7C3F001EBE9D /* WXExtendCallNativeManager.h in Headers */,
DCA445CB1EFA590600D0CFA8 /* WXComponent+Layout.h in Headers */,
DCA4460F1EFA5A8100D0CFA8 /* WXDiffUtil.h in Headers */,
DCA445F91EFA5A3700D0CFA8 /* WXClipboardModule.h in Headers */,
@@ -1750,6 +1757,7 @@
DCA446061EFA5A5B00D0CFA8 /* NSTimer+Weex.h in Headers */,
DCA445D61EFA598600D0CFA8 /* WXView.h in Headers */,
DCA445FF1EFA5A4600D0CFA8 /* WXInstanceWrap.h in Headers */,
+ C42E8FAB1F3C7C09001EBE9D /* WXExtendCallNativeProtocol.h in Headers */,
DCA445F31EFA5A2500D0CFA8 /* WXFooterComponent.h in Headers */,
DCA446151EFA5A9000D0CFA8 /* WXBridgeContext.h in Headers */,
DCA4461A1EFA5AA000D0CFA8 /* WXInvocationConfig.h in Headers */,
@@ -2193,6 +2201,7 @@
DCA445661EFA55B300D0CFA8 /* WXNavigatorModule.m in Sources */,
DCA445671EFA55B300D0CFA8 /* WXStorageModule.m in Sources */,
DCA445681EFA55B300D0CFA8 /* WXStreamModule.m in Sources */,
+ C42E8FAC1F3C7C3B001EBE9D /* WXExtendCallNativeManager.m in Sources */,
DCA445691EFA55B300D0CFA8 /* WXAnimationModule.m in Sources */,
DCA4456A1EFA55B300D0CFA8 /* WXAnimationLayout.m in Sources */,
DCA4456B1EFA55B300D0CFA8 /* WXInstanceWrap.m in Sources */,
@@ -2213,6 +2222,7 @@
DCA4457A1EFA55B300D0CFA8 /* WXSimulatorShortcutManager.m in Sources */,
DCA4457B1EFA55B300D0CFA8 /* WXAssert.m in Sources */,
DCA4457C1EFA55B300D0CFA8 /* WXAppConfiguration.m in Sources */,
+ C42E8FAE1F3C7C49001EBE9D /* WXRecyclerDragController.m in Sources */,
DCA4457D1EFA55B300D0CFA8 /* WXThreadSafeMutableDictionary.m in Sources */,
DCA4457E1EFA55B300D0CFA8 /* WXThreadSafeMutableArray.m in Sources */,
DCA4457F1EFA55B300D0CFA8 /* NSObject+WXSwizzle.m in Sources */,
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4df48bcc/ios/sdk/WeexSDK/Sources/WeexSDK.h
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/WeexSDK.h b/ios/sdk/WeexSDK/Sources/WeexSDK.h
index ec9b2cc..959369d 100644
--- a/ios/sdk/WeexSDK/Sources/WeexSDK.h
+++ b/ios/sdk/WeexSDK/Sources/WeexSDK.h
@@ -48,6 +48,7 @@
#import "WXJSExceptionInfo.h"
#import "WXIndicatorComponent.h"
#import "WXImgLoaderProtocol.h"
+#import "WXExtendCallNativeProtocol.h"
#import "WXEventModuleProtocol.h"
#import "WXErrorView.h"
#import "WXDefine.h"
[03/10] incubator-weex git commit: Merge branch '0.16-dev' of
https://git-wip-us.apache.org/repos/asf/incubator-weex into
ios-native-0.16-dev
Posted by kf...@apache.org.
Merge branch '0.16-dev' of https://git-wip-us.apache.org/repos/asf/incubator-weex into ios-native-0.16-dev
# Conflicts:
# ios/playground/WeexDemo.xcodeproj/project.pbxproj
# ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/51009919
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/51009919
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/51009919
Branch: refs/heads/0.16-dev
Commit: 51009919269b7fecbe0da5adc832efbdcc1f5603
Parents: 6225ed1 a54bcb9
Author: 齐山 <su...@163.com>
Authored: Thu Jul 27 12:21:01 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Thu Jul 27 12:21:01 2017 +0800
----------------------------------------------------------------------
README.md | 51 +-
WeexSDK.podspec | 2 +-
.../weex/extend/component/WXParallax.java | 4 +-
.../java/com/taobao/weex/WXSDKInstance.java | 6 +-
.../taobao/weex/dom/WXRecyclerDomObject.java | 4 +
.../ui/component/list/BasicListComponent.java | 96 +--
.../taobao/weex/ui/component/list/WXCell.java | 10 -
.../weex/ui/component/list/WXListComponent.java | 9 +-
build/config.js | 1 +
build/karma.vue.conf.js | 7 +
dangerfile.js | 8 +-
examples/vue/components/input.vue | 17 +
html5/render/vue/modules/websocket/websocket.js | 1 +
html5/render/vue/utils/event.js | 6 +-
html5/render/vue/utils/func.js | 136 +++-
html5/render/vue/utils/index.js | 104 ---
html5/render/vue/utils/perf.js | 3 +-
html5/test/render/vue/core/node.js | 15 +-
.../render/vue/data/dotvue/event-bubble-bar.vue | 19 +-
.../render/vue/data/dotvue/event-bubble.vue | 15 +-
html5/test/render/vue/modules/animation.js | 61 ++
html5/test/render/vue/modules/dom.js | 109 ++++
html5/test/render/vue/modules/globalEvent.js | 45 ++
html5/test/render/vue/modules/navigator.js | 44 ++
html5/test/render/vue/modules/websocket.js | 90 +--
html5/test/render/vue/modules/webview.js | 53 ++
html5/test/render/vue/utils/component.js | 50 +-
html5/test/render/vue/utils/event.js | 78 +++
html5/test/render/vue/utils/func.js | 278 +++++++-
html5/test/render/vue/utils/lazyload.js | 106 +++
html5/test/render/vue/utils/perf.js | 132 ++++
html5/test/render/vue/utils/style.js | 157 ++++-
html5/test/render/vue/utils/type.js | 49 ++
html5/test/render/vue/validator/index.js | 31 +-
ios/playground/Podfile | 2 +-
.../WeexDemo.xcodeproj/project.pbxproj | 4 +
ios/playground/WeexDemo/WXDemoViewController.m | 2 +-
ios/sdk/WeexSDK-Dynamic/Info.plist | 24 +
ios/sdk/WeexSDK.xcodeproj/project.pbxproj | 638 ++++++++++++++++++-
.../xcschemes/WeexSDK-Dynamic.xcscheme | 80 +++
.../WeexSDK/Sources/Bridge/WXBridgeContext.h | 2 +-
.../WeexSDK/Sources/Bridge/WXBridgeContext.m | 46 +-
ios/sdk/WeexSDK/Sources/Bridge/WXBridgeMethod.m | 16 +-
ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m | 33 +-
ios/sdk/WeexSDK/Sources/Bridge/WXModuleMethod.h | 2 +
ios/sdk/WeexSDK/Sources/Bridge/WXModuleMethod.m | 11 +-
.../Component/Recycler/WXRecyclerComponent.h | 3 +-
.../Component/Recycler/WXRecyclerComponent.m | 5 +-
.../Recycler/WXSectionDataController.h | 2 +
.../Sources/Component/WXCanvasComponent.h | 2 +-
.../WeexSDK/Sources/Component/WXEditComponent.m | 2 +-
.../Sources/Component/WXFooterComponent.h | 2 +-
.../Sources/Component/WXHeaderComponent.h | 3 +-
.../Sources/Component/WXImageComponent.m | 1 +
.../WeexSDK/Sources/Component/WXListComponent.m | 4 +-
.../Sources/Component/WXScrollerComponent.m | 1 +
.../WeexSDK/Sources/Component/WXTextComponent.m | 1 +
.../Sources/Controller/WXRootViewController.m | 1 +
.../Sources/Display/WXComponent+BoxShadow.h | 4 -
ios/sdk/WeexSDK/Sources/Display/WXInnerLayer.h | 1 +
ios/sdk/WeexSDK/Sources/Display/WXRoundedRect.h | 2 +-
ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m | 10 +-
.../WeexSDK/Sources/Layout/WXComponent+Layout.m | 1 +
.../Sources/Manager/WXComponentManager.h | 3 +
.../Sources/Manager/WXComponentManager.m | 19 +-
.../WeexSDK/Sources/Manager/WXServiceFactory.h | 2 +-
.../WeexSDK/Sources/Manager/WXTracingManager.h | 126 ++++
.../WeexSDK/Sources/Manager/WXTracingManager.m | 384 +++++++++++
ios/sdk/WeexSDK/Sources/Model/WXComponent.m | 5 +-
.../WeexSDK/Sources/Model/WXJSExceptionInfo.h | 1 +
.../WeexSDK/Sources/Model/WXJSExceptionInfo.m | 1 +
ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m | 9 +
.../WeexSDK/Sources/Module/WXAnimationModule.m | 7 +-
ios/sdk/WeexSDK/Sources/Module/WXDomModule.m | 4 +-
ios/sdk/WeexSDK/Sources/Module/WXPickerModule.m | 4 +-
.../WeexSDK/Sources/Protocol/WXBridgeProtocol.h | 5 +
.../Sources/Protocol/WXValidateProtocol.h | 4 +-
ios/sdk/WeexSDK/Sources/Utility/WXDefine.h | 2 +-
ios/sdk/WeexSDK/Sources/Utility/WXLog.m | 8 +
.../View/WXComponent+PseudoClassManagement.h | 4 +-
.../Sources/View/WXComponent+ViewManagement.m | 3 +-
ios/sdk/WeexSDK/Sources/WeexSDK.h | 1 +
ios/sdk/buildScripts.sh | 2 +
pre-build/native-bundle-main.js | 12 +-
84 files changed, 2873 insertions(+), 435 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/51009919/ios/playground/WeexDemo.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --cc ios/playground/WeexDemo.xcodeproj/project.pbxproj
index b9695e7,2edc462..7cfcbd8
--- a/ios/playground/WeexDemo.xcodeproj/project.pbxproj
+++ b/ios/playground/WeexDemo.xcodeproj/project.pbxproj
@@@ -30,7 -30,7 +30,8 @@@
846FC8DB1E1B853600949E7D /* WXATViewHierarchyPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = DCABAFF21D029685001C8592 /* WXATViewHierarchyPlugin.m */; };
84D7CAC71CE3266C00D48D46 /* libsqlite3.0.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 7475ACA01CD8444A0044E96C /* libsqlite3.0.tbd */; };
8A0B5EFFF75BF82EA481983D /* libPods-WeexUITestDemo.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E48C20F443AA337D1FE97622 /* libPods-WeexUITestDemo.a */; };
+ C47B78D21F299E27001D3B0C /* WXExtendCallNativeTest.m in Sources */ = {isa = PBXBuildFile; fileRef = C47B78D11F299E27001D3B0C /* WXExtendCallNativeTest.m */; };
+ C43CDA031F1C6E01005A6B03 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = C43CDA021F1C6E01005A6B03 /* libz.tbd */; };
DC20B8E61ECADA2500845F39 /* WXConfigCenterDefaultImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = DC20B8E51ECADA2500845F39 /* WXConfigCenterDefaultImpl.m */; };
DC5B53691E8CED9400E02125 /* WXScannerHistoryVC.m in Sources */ = {isa = PBXBuildFile; fileRef = DC5B53681E8CED9400E02125 /* WXScannerHistoryVC.m */; };
DC5E503E1D0D97130059F0EB /* weex.png in Resources */ = {isa = PBXBuildFile; fileRef = DC5E503C1D0D97130059F0EB /* weex.png */; };
@@@ -90,8 -90,7 +91,9 @@@
775BEE9A1C1E8ECC008D1629 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
84361D751CA10F8E00F43825 /* WeexUITestDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WeexUITestDemo.app; sourceTree = BUILT_PRODUCTS_DIR; };
9420131417A731ED089B0814 /* Pods-WeexDemo.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WeexDemo.release.xcconfig"; path = "Pods/Target Support Files/Pods-WeexDemo/Pods-WeexDemo.release.xcconfig"; sourceTree = "<group>"; };
+ C47B78D01F299E27001D3B0C /* WXExtendCallNativeTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtendCallNativeTest.h; sourceTree = "<group>"; };
+ C47B78D11F299E27001D3B0C /* WXExtendCallNativeTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXExtendCallNativeTest.m; sourceTree = "<group>"; };
+ C43CDA021F1C6E01005A6B03 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; };
DC20B8E41ECADA2500845F39 /* WXConfigCenterDefaultImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXConfigCenterDefaultImpl.h; sourceTree = "<group>"; };
DC20B8E51ECADA2500845F39 /* WXConfigCenterDefaultImpl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXConfigCenterDefaultImpl.m; sourceTree = "<group>"; };
DC5B53671E8CED9400E02125 /* WXScannerHistoryVC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WXScannerHistoryVC.h; path = Scanner/WXScannerHistoryVC.h; sourceTree = "<group>"; };
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/51009919/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/51009919/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
----------------------------------------------------------------------
diff --cc ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
index bdcb874,13d8578..342dfed
--- a/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
+++ b/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
@@@ -34,7 -34,7 +34,8 @@@
#import "JSValue+Weex.h"
#import "WXJSExceptionProtocol.h"
#import "WXSDKManager.h"
+#import "WXExtendCallNativeManager.h"
+ #import "WXTracingManager.h"
#import <dlfcn.h>
[06/10] incubator-weex git commit: + [ios] add license @notdanger
Posted by kf...@apache.org.
+ [ios] add license @notdanger
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/816bde1b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/816bde1b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/816bde1b
Branch: refs/heads/0.16-dev
Commit: 816bde1bdedfdc79d4f6ae4f3404564d4fa60741
Parents: 4d78365
Author: 齐山 <su...@163.com>
Authored: Thu Aug 10 16:10:46 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Thu Aug 10 16:10:46 2017 +0800
----------------------------------------------------------------------
examples/vue/hello.vue | 54 ++------------------
.../WeexDemo/WXExtendCallNativeTest.h | 25 ++++++---
.../WeexDemo/WXExtendCallNativeTest.m | 25 ++++++---
.../Sources/Manager/WXExtendCallNativeManager.h | 26 +++++++---
.../Sources/Manager/WXExtendCallNativeManager.m | 25 ++++++---
5 files changed, 75 insertions(+), 80 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/816bde1b/examples/vue/hello.vue
----------------------------------------------------------------------
diff --git a/examples/vue/hello.vue b/examples/vue/hello.vue
index 8309aaa..76272f7 100644
--- a/examples/vue/hello.vue
+++ b/examples/vue/hello.vue
@@ -1,53 +1,5 @@
-<!--
- * <template>: html-like syntax
- * CSS-like inline style
- * <style scoped>: only support single-class selector
- * <script>: define the behavior of component
- * :attr data-binding support
- * @xxx syntax to bind event with a component method
--->
-
-<!--
- notes:
- * <template> only could have just one child
- * the text node is only allowed as the child of <text> as the shorthand of its `value` attribute
- * the style is not inherited from parent (for example: `font-size`)
- * <script> support ECMAScript 5
- * all component options assigns to `module.exports`
--->
-
<template>
- <div class="wrapper" @click="update">
- <image :src="logoUrl" class="logo"></image>
- <text class="title">Hello {{target}}</text>
+ <div>
+ <text style="font-size: 100px;">Hello World.</text>
</div>
-</template>
-
-<style scoped>
- .wrapper {align-items: center; margin-top: 120px;}
- .title {font-size: 48px;}
- .logo {width: 360px; height: 82px;}
-</style>
-
-<script>
- var modal = weex.requireModule('modal')
- module.exports = {
- data: {
- logoUrl: 'https://alibaba.github.io/weex/img/weex_logo_blue@3x.png',
- target: 'World'
- },
- methods: {
- update: function (e) {
- this.target = 'Weex'
- console.log('target:', this.target)
- var dict = extendCallNative({
- 'className':'test'
- })
- modal.toast({
- 'message': dict['value'],
- 'duration': 1000
- })
- }
- }
- }
-</script>
+</template>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/816bde1b/ios/playground/WeexDemo/WXExtendCallNativeTest.h
----------------------------------------------------------------------
diff --git a/ios/playground/WeexDemo/WXExtendCallNativeTest.h b/ios/playground/WeexDemo/WXExtendCallNativeTest.h
index 50d2c2a..4671779 100644
--- a/ios/playground/WeexDemo/WXExtendCallNativeTest.h
+++ b/ios/playground/WeexDemo/WXExtendCallNativeTest.h
@@ -1,10 +1,21 @@
-//
-// WXExtendCallNativeTest.h
-// WeexDemo
-//
-// Created by 齐山 on 2017/7/27.
-// Copyright © 2017年 taobao. All rights reserved.
-//
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
#import <Foundation/Foundation.h>
#import "WXExtendCallNativeProtocol.h"
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/816bde1b/ios/playground/WeexDemo/WXExtendCallNativeTest.m
----------------------------------------------------------------------
diff --git a/ios/playground/WeexDemo/WXExtendCallNativeTest.m b/ios/playground/WeexDemo/WXExtendCallNativeTest.m
index afedde1..ba11caf 100644
--- a/ios/playground/WeexDemo/WXExtendCallNativeTest.m
+++ b/ios/playground/WeexDemo/WXExtendCallNativeTest.m
@@ -1,10 +1,21 @@
-//
-// WXExtendCallNativeTest.m
-// WeexDemo
-//
-// Created by 齐山 on 2017/7/27.
-// Copyright © 2017年 taobao. All rights reserved.
-//
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
#import "WXExtendCallNativeTest.h"
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/816bde1b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
index cb5fea6..ded9bc7 100644
--- a/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
+++ b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
@@ -1,10 +1,21 @@
-//
-// WXExtendCallNativeManager.h
-// WeexSDK
-//
-// Created by 齐山 on 2017/7/27.
-// Copyright © 2017年 taobao. All rights reserved.
-//
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
#import <Foundation/Foundation.h>
@@ -12,5 +23,4 @@
+ (id)sendExtendCallNativeEvent:(NSDictionary *)parameters;
+ (void)registerExtendCallNative:(NSString *)name withClass:(Class)clazz;
-+ (Class)classWithComponentName:(NSString *)name;
@end
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/816bde1b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
index 58a7cdd..17b1541 100644
--- a/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
+++ b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
@@ -1,10 +1,21 @@
-//
-// WXExtendCallNativeManager.m
-// WeexSDK
-//
-// Created by 齐山 on 2017/7/27.
-// Copyright © 2017年 taobao. All rights reserved.
-//
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
#import "WXExtendCallNativeManager.h"
#import "WXExtendCallNativeProtocol.h"
[02/10] incubator-weex git commit: + [ios] add extend call native
Posted by kf...@apache.org.
+ [ios] add extend call native
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/6225ed13
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/6225ed13
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/6225ed13
Branch: refs/heads/0.16-dev
Commit: 6225ed13d9ae3dda08c848abe3ba8f669037b296
Parents: b3e4049
Author: 齐山 <su...@163.com>
Authored: Thu Jul 27 12:16:51 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Thu Jul 27 12:16:51 2017 +0800
----------------------------------------------------------------------
examples/vue/hello.vue | 54 ++++++++++++++++++--
.../WeexDemo.xcodeproj/project.pbxproj | 6 +++
.../WeexDemo/WXExtendCallNativeTest.h | 14 +++++
.../WeexDemo/WXExtendCallNativeTest.m | 36 +++++++++++++
ios/sdk/WeexSDK.xcodeproj/project.pbxproj | 8 +++
ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m | 7 ++-
.../Sources/Manager/WXExtendCallNativeManager.h | 15 ++++++
.../Sources/Manager/WXExtendCallNativeManager.m | 28 ++++++++++
.../Protocol/WXExtendCallNativeProtocol.h | 22 +++++++-
9 files changed, 182 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6225ed13/examples/vue/hello.vue
----------------------------------------------------------------------
diff --git a/examples/vue/hello.vue b/examples/vue/hello.vue
index 76272f7..e387e5a 100644
--- a/examples/vue/hello.vue
+++ b/examples/vue/hello.vue
@@ -1,5 +1,53 @@
+<!--
+ * <template>: html-like syntax
+ * CSS-like inline style
+ * <style scoped>: only support single-class selector
+ * <script>: define the behavior of component
+ * :attr data-binding support
+ * @xxx syntax to bind event with a component method
+-->
+
+<!--
+ notes:
+ * <template> only could have just one child
+ * the text node is only allowed as the child of <text> as the shorthand of its `value` attribute
+ * the style is not inherited from parent (for example: `font-size`)
+ * <script> support ECMAScript 5
+ * all component options assigns to `module.exports`
+-->
+
<template>
- <div>
- <text style="font-size: 100px;">Hello World.</text>
+ <div class="wrapper" @click="update">
+ <image :src="logoUrl" class="logo"></image>
+ <text class="title">Hello {{target}}</text>
</div>
-</template>
\ No newline at end of file
+</template>
+
+<style scoped>
+ .wrapper {align-items: center; margin-top: 120px;}
+ .title {font-size: 48px;}
+ .logo {width: 360px; height: 82px;}
+</style>
+
+<script>
+ var modal = weex.requireModule('modal')
+ module.exports = {
+ data: {
+ logoUrl: 'https://alibaba.github.io/weex/img/weex_logo_blue@3x.png',
+ target: 'World'
+ },
+ methods: {
+ update: function (e) {
+ this.target = 'Weex'
+ console.log('target:', this.target)
+ var dict = extendCallNative({
+ 'className':'WXExtendCallNativeTest'
+ })
+ modal.toast({
+ 'message': dict['value'],
+ 'duration': 1000
+ })
+ }
+ }
+ }
+</script>
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6225ed13/ios/playground/WeexDemo.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --git a/ios/playground/WeexDemo.xcodeproj/project.pbxproj b/ios/playground/WeexDemo.xcodeproj/project.pbxproj
index 76d1423..b9695e7 100644
--- a/ios/playground/WeexDemo.xcodeproj/project.pbxproj
+++ b/ios/playground/WeexDemo.xcodeproj/project.pbxproj
@@ -30,6 +30,7 @@
846FC8DB1E1B853600949E7D /* WXATViewHierarchyPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = DCABAFF21D029685001C8592 /* WXATViewHierarchyPlugin.m */; };
84D7CAC71CE3266C00D48D46 /* libsqlite3.0.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 7475ACA01CD8444A0044E96C /* libsqlite3.0.tbd */; };
8A0B5EFFF75BF82EA481983D /* libPods-WeexUITestDemo.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E48C20F443AA337D1FE97622 /* libPods-WeexUITestDemo.a */; };
+ C47B78D21F299E27001D3B0C /* WXExtendCallNativeTest.m in Sources */ = {isa = PBXBuildFile; fileRef = C47B78D11F299E27001D3B0C /* WXExtendCallNativeTest.m */; };
DC20B8E61ECADA2500845F39 /* WXConfigCenterDefaultImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = DC20B8E51ECADA2500845F39 /* WXConfigCenterDefaultImpl.m */; };
DC5B53691E8CED9400E02125 /* WXScannerHistoryVC.m in Sources */ = {isa = PBXBuildFile; fileRef = DC5B53681E8CED9400E02125 /* WXScannerHistoryVC.m */; };
DC5E503E1D0D97130059F0EB /* weex.png in Resources */ = {isa = PBXBuildFile; fileRef = DC5E503C1D0D97130059F0EB /* weex.png */; };
@@ -89,6 +90,8 @@
775BEE9A1C1E8ECC008D1629 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
84361D751CA10F8E00F43825 /* WeexUITestDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WeexUITestDemo.app; sourceTree = BUILT_PRODUCTS_DIR; };
9420131417A731ED089B0814 /* Pods-WeexDemo.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WeexDemo.release.xcconfig"; path = "Pods/Target Support Files/Pods-WeexDemo/Pods-WeexDemo.release.xcconfig"; sourceTree = "<group>"; };
+ C47B78D01F299E27001D3B0C /* WXExtendCallNativeTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtendCallNativeTest.h; sourceTree = "<group>"; };
+ C47B78D11F299E27001D3B0C /* WXExtendCallNativeTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXExtendCallNativeTest.m; sourceTree = "<group>"; };
DC20B8E41ECADA2500845F39 /* WXConfigCenterDefaultImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXConfigCenterDefaultImpl.h; sourceTree = "<group>"; };
DC20B8E51ECADA2500845F39 /* WXConfigCenterDefaultImpl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXConfigCenterDefaultImpl.m; sourceTree = "<group>"; };
DC5B53671E8CED9400E02125 /* WXScannerHistoryVC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WXScannerHistoryVC.h; path = Scanner/WXScannerHistoryVC.h; sourceTree = "<group>"; };
@@ -250,6 +253,8 @@
747DF6661E2F176A005C53A8 /* UIView+UIThreadCheck.h */,
747DF6671E2F176A005C53A8 /* UIView+UIThreadCheck.m */,
7453E3641C9FA971001EB427 /* DemoDefine.h */,
+ C47B78D01F299E27001D3B0C /* WXExtendCallNativeTest.h */,
+ C47B78D11F299E27001D3B0C /* WXExtendCallNativeTest.m */,
);
name = Source;
sourceTree = "<group>";
@@ -574,6 +579,7 @@
775BEE801C1E8ECC008D1629 /* main.m in Sources */,
DCABAFFE1D029753001C8592 /* WXImgLoaderDefaultImpl.m in Sources */,
747DF6681E2F176A005C53A8 /* UIView+UIThreadCheck.m in Sources */,
+ C47B78D21F299E27001D3B0C /* WXExtendCallNativeTest.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6225ed13/ios/playground/WeexDemo/WXExtendCallNativeTest.h
----------------------------------------------------------------------
diff --git a/ios/playground/WeexDemo/WXExtendCallNativeTest.h b/ios/playground/WeexDemo/WXExtendCallNativeTest.h
new file mode 100644
index 0000000..50d2c2a
--- /dev/null
+++ b/ios/playground/WeexDemo/WXExtendCallNativeTest.h
@@ -0,0 +1,14 @@
+//
+// WXExtendCallNativeTest.h
+// WeexDemo
+//
+// Created by 齐山 on 2017/7/27.
+// Copyright © 2017年 taobao. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import "WXExtendCallNativeProtocol.h"
+
+@interface WXExtendCallNativeTest : NSObject<WXExtendCallNativeProtocol>
+
+@end
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6225ed13/ios/playground/WeexDemo/WXExtendCallNativeTest.m
----------------------------------------------------------------------
diff --git a/ios/playground/WeexDemo/WXExtendCallNativeTest.m b/ios/playground/WeexDemo/WXExtendCallNativeTest.m
new file mode 100644
index 0000000..afedde1
--- /dev/null
+++ b/ios/playground/WeexDemo/WXExtendCallNativeTest.m
@@ -0,0 +1,36 @@
+//
+// WXExtendCallNativeTest.m
+// WeexDemo
+//
+// Created by 齐山 on 2017/7/27.
+// Copyright © 2017年 taobao. All rights reserved.
+//
+
+#import "WXExtendCallNativeTest.h"
+
+@implementation WXExtendCallNativeTest
+
+#pragma mark -
+#pragma WXExtendCallNativeProtocol
+
++ (BOOL)checkParameters:(NSDictionary *)parameters
+{
+ if(!parameters || ![parameters isKindOfClass:[NSDictionary class]]){
+ return NO;
+ }
+
+ if(!parameters[@"className"]){
+ return NO;
+ }
+
+ return YES;
+}
+
+
++ (id)excuteCallNative:(NSDictionary *)parameters
+{
+ NSLog(@"weex test");
+ return @{@"value":@"test"};
+}
+
+@end
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6225ed13/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK.xcodeproj/project.pbxproj b/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
index 46f7adb..1238614 100644
--- a/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
+++ b/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
@@ -239,6 +239,8 @@
C43C03E81EC8ACA40044C7FF /* WXPrerenderManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C43C03E41EC8ACA40044C7FF /* WXPrerenderManager.h */; settings = {ATTRIBUTES = (Public, ); }; };
C43C03E91EC8ACA40044C7FF /* WXPrerenderManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C43C03E51EC8ACA40044C7FF /* WXPrerenderManager.m */; };
C4424E5B1F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */; };
+ C47B78CE1F2998EE001D3B0C /* WXExtendCallNativeManager.h in Headers */ = {isa = PBXBuildFile; fileRef = C47B78CC1F2998EE001D3B0C /* WXExtendCallNativeManager.h */; };
+ C47B78CF1F2998EE001D3B0C /* WXExtendCallNativeManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C47B78CD1F2998EE001D3B0C /* WXExtendCallNativeManager.m */; };
C4B3D6D41E6954300013F38D /* WXEditComponent.h in Headers */ = {isa = PBXBuildFile; fileRef = C4B3D6D21E6954300013F38D /* WXEditComponent.h */; };
C4B3D6D51E6954300013F38D /* WXEditComponent.m in Sources */ = {isa = PBXBuildFile; fileRef = C4B3D6D31E6954300013F38D /* WXEditComponent.m */; };
C4B834271DE69B09007AD27E /* WXPickerModule.m in Sources */ = {isa = PBXBuildFile; fileRef = C4B834251DE69B09007AD27E /* WXPickerModule.m */; };
@@ -557,6 +559,8 @@
C43C03E41EC8ACA40044C7FF /* WXPrerenderManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXPrerenderManager.h; sourceTree = "<group>"; };
C43C03E51EC8ACA40044C7FF /* WXPrerenderManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXPrerenderManager.m; sourceTree = "<group>"; };
C4424E591F24DA3D009F52E2 /* WXExtendCallNativeProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtendCallNativeProtocol.h; sourceTree = "<group>"; };
+ C47B78CC1F2998EE001D3B0C /* WXExtendCallNativeManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXExtendCallNativeManager.h; sourceTree = "<group>"; };
+ C47B78CD1F2998EE001D3B0C /* WXExtendCallNativeManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXExtendCallNativeManager.m; sourceTree = "<group>"; };
C4B3D6D21E6954300013F38D /* WXEditComponent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WXEditComponent.h; sourceTree = "<group>"; };
C4B3D6D31E6954300013F38D /* WXEditComponent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXEditComponent.m; sourceTree = "<group>"; };
C4B834251DE69B09007AD27E /* WXPickerModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WXPickerModule.m; sourceTree = "<group>"; };
@@ -970,6 +974,8 @@
741081221CED6756001BC6E5 /* WXComponentFactory.m */,
DCAB35FC1D658EB700C0EA70 /* WXRuleManager.h */,
DCAB35FD1D658EB700C0EA70 /* WXRuleManager.m */,
+ C47B78CC1F2998EE001D3B0C /* WXExtendCallNativeManager.h */,
+ C47B78CD1F2998EE001D3B0C /* WXExtendCallNativeManager.m */,
);
path = Manager;
sourceTree = "<group>";
@@ -1259,6 +1265,7 @@
77D161621C02ED790010B15B /* WXLog.h in Headers */,
77D1614B1C02E3790010B15B /* WXConvert.h in Headers */,
59A596221CB6311F0012CD52 /* WXNavigatorModule.h in Headers */,
+ C47B78CE1F2998EE001D3B0C /* WXExtendCallNativeManager.h in Headers */,
745B2D6A1E5A8E1E0092D38A /* WXRecyclerComponent.h in Headers */,
749DC27B1D40827B009E1C91 /* WXMonitor.h in Headers */,
77E659DA1C07F594008B8775 /* WXDomModule.h in Headers */,
@@ -1558,6 +1565,7 @@
C4F012831E1502E9003378D0 /* WXWebSocketModule.m in Sources */,
59D3CA401CF9ED57008835DC /* Layout.c in Sources */,
DCF087621DCAE161005CD6EB /* WXInvocationConfig.m in Sources */,
+ C47B78CF1F2998EE001D3B0C /* WXExtendCallNativeManager.m in Sources */,
77D161311C02DE4E0010B15B /* WXComponent.m in Sources */,
74862F7A1E02B88D00B7A041 /* JSValue+Weex.m in Sources */,
740451EB1E14BB26004157CB /* WXServiceFactory.m in Sources */,
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6225ed13/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m b/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
index f241502..bdcb874 100644
--- a/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
+++ b/ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m
@@ -34,7 +34,7 @@
#import "JSValue+Weex.h"
#import "WXJSExceptionProtocol.h"
#import "WXSDKManager.h"
-#import "WXExtendCallNativeProtocol.h"
+#import "WXExtendCallNativeManager.h"
#import <dlfcn.h>
@@ -503,9 +503,8 @@
-(id)extendCallNative:(NSDictionary *)dict
{
- id extendCallNative = [WXSDKEngine handlerForProtocol:@protocol(WXExtendCallNativeProtocol)];
- if(extendCallNative){
- return [extendCallNative excuteCallNative:dict];
+ if(dict){
+ return [WXExtendCallNativeManager sendExtendCallNativeEvent:dict];
}
return @(-1);
}
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6225ed13/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
new file mode 100644
index 0000000..20c3e7d
--- /dev/null
+++ b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.h
@@ -0,0 +1,15 @@
+//
+// WXExtendCallNativeManager.h
+// WeexSDK
+//
+// Created by 齐山 on 2017/7/27.
+// Copyright © 2017年 taobao. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+@interface WXExtendCallNativeManager : NSObject
+
++(id)sendExtendCallNativeEvent:(NSDictionary *)parameters;
+
+@end
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6225ed13/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
new file mode 100644
index 0000000..6fbdd02
--- /dev/null
+++ b/ios/sdk/WeexSDK/Sources/Manager/WXExtendCallNativeManager.m
@@ -0,0 +1,28 @@
+//
+// WXExtendCallNativeManager.m
+// WeexSDK
+//
+// Created by 齐山 on 2017/7/27.
+// Copyright © 2017年 taobao. All rights reserved.
+//
+
+#import "WXExtendCallNativeManager.h"
+#import "WXExtendCallNativeProtocol.h"
+#import <objc/runtime.h>
+
+@implementation WXExtendCallNativeManager
+
++(id)sendExtendCallNativeEvent:(NSDictionary *)parameters
+{
+ if(parameters[@"className"]){
+ Class<WXExtendCallNativeProtocol> receiveClass = NSClassFromString(parameters[@"className"]);
+ if(class_conformsToProtocol(receiveClass,@protocol(WXExtendCallNativeProtocol))){
+ BOOL receivedItem = [receiveClass checkParameters:parameters];
+ if(receivedItem){
+ return [receiveClass excuteCallNative:parameters];
+ }
+ }
+ }
+ return @(-1);
+}
+@end
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6225ed13/ios/sdk/WeexSDK/Sources/Protocol/WXExtendCallNativeProtocol.h
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Protocol/WXExtendCallNativeProtocol.h b/ios/sdk/WeexSDK/Sources/Protocol/WXExtendCallNativeProtocol.h
index 5afb1dc..c920b73 100644
--- a/ios/sdk/WeexSDK/Sources/Protocol/WXExtendCallNativeProtocol.h
+++ b/ios/sdk/WeexSDK/Sources/Protocol/WXExtendCallNativeProtocol.h
@@ -22,6 +22,26 @@
@protocol WXExtendCallNativeProtocol <NSObject>
-- (id)excuteCallNative:(NSDictionary *)dict;
+@required
+
+/**
+ * @abstract check parameters
+ *
+ * @param parameters the checked parameters.
+ *
+ * @return YES or NO.
+ *
+ */
++ (BOOL)checkParameters:(NSDictionary *)parameters;
+
+/**
+ * @abstract excuteCallNative
+ *
+ * @param parameters the checked parameters.
+ *
+ * @return A value.
+ *
+ */
++ (id)excuteCallNative:(NSDictionary *)parameters;
@end