├── .travis.yml ├── CODE_OF_CONDUCT.md ├── DISCLAIMER ├── LICENSE ├── NOTICE ├── README.md ├── RETIRED.txt ├── android ├── .gitignore ├── build.gradle ├── commons │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ └── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── weex │ │ │ └── commons │ │ │ ├── AbstractWeexActivity.java │ │ │ ├── SimpleWeexActivity.java │ │ │ ├── WXAnalyzerDelegate.java │ │ │ ├── adapter │ │ │ ├── BlurTool.java │ │ │ ├── BlurTransformation.java │ │ │ ├── DefaultWebSocketAdapter.java │ │ │ ├── DefaultWebSocketAdapterFactory.java │ │ │ ├── FrescoImageAdapter.java │ │ │ ├── FrescoImageComponent.java │ │ │ ├── FrescoImageView.java │ │ │ ├── ImageAdapter.java │ │ │ ├── JSExceptionAdapter.java │ │ │ └── PicassoBasedDrawableLoader.java │ │ │ └── util │ │ │ ├── AssertUtil.java │ │ │ ├── RequestIdGenerator.java │ │ │ ├── ScreenUtil.java │ │ │ └── WSEventReporter.java │ │ └── res │ │ └── values │ │ └── strings.xml ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── license │ └── LICENSE ├── playground │ ├── build.gradle │ ├── proguard-rules.pro │ ├── src │ │ ├── androidTest │ │ │ ├── AndroidManifest.xml │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── weex │ │ │ │ ├── ApplicationTest.java │ │ │ │ ├── WeappJsBaseTestCase.java │ │ │ │ ├── benchmark │ │ │ │ ├── BenchmarkTest.java │ │ │ │ ├── BoxPlot.java │ │ │ │ ├── Repeat.java │ │ │ │ ├── RepeatRule.java │ │ │ │ └── WeexNativeCompareTest.java │ │ │ │ ├── uitest │ │ │ │ └── uitest │ │ │ │ │ ├── TC_AG │ │ │ │ │ ├── AG_AHref_A_Href.java │ │ │ │ │ ├── AG_Border_A_Border_Bottom_Color.java │ │ │ │ │ ├── AG_Border_A_Border_Bottom_Left_Radius.java │ │ │ │ │ ├── AG_Border_A_Border_Bottom_Right_Radius.java │ │ │ │ │ ├── AG_Border_A_Border_Bottom_Width.java │ │ │ │ │ ├── AG_Border_A_Border_Color.java │ │ │ │ │ ├── AG_Border_A_Border_Left_Color.java │ │ │ │ │ ├── AG_Border_A_Border_Left_Width.java │ │ │ │ │ ├── AG_Border_A_Border_Radius.java │ │ │ │ │ ├── AG_Border_A_Border_Right_Color.java │ │ │ │ │ ├── AG_Border_A_Border_Right_Width.java │ │ │ │ │ ├── AG_Border_A_Border_Style.java │ │ │ │ │ ├── AG_Border_A_Border_Top_Color.java │ │ │ │ │ ├── AG_Border_A_Border_Top_Left_Radius.java │ │ │ │ │ ├── AG_Border_A_Border_Top_Right_Radius.java │ │ │ │ │ ├── AG_Border_A_Border_Top_Width.java │ │ │ │ │ ├── AG_Border_A_Border_Width.java │ │ │ │ │ ├── AG_Border_Div_Border_Bottom_Color.java │ │ │ │ │ ├── AG_Border_Div_Border_Bottom_Left_Radius.java │ │ │ │ │ ├── AG_Border_Div_Border_Bottom_Right_Radius.java │ │ │ │ │ ├── AG_Border_Div_Border_Bottom_Width.java │ │ │ │ │ ├── AG_Border_Div_Border_Color.java │ │ │ │ │ ├── AG_Border_Div_Border_Left_Color.java │ │ │ │ │ ├── AG_Border_Div_Border_Left_Width.java │ │ │ │ │ ├── AG_Border_Div_Border_Radius.java │ │ │ │ │ ├── AG_Border_Div_Border_Right_Color.java │ │ │ │ │ ├── AG_Border_Div_Border_Right_Width.java │ │ │ │ │ ├── AG_Border_Div_Border_Style.java │ │ │ │ │ ├── AG_Border_Div_Border_Top_Color.java │ │ │ │ │ ├── AG_Border_Div_Border_Top_Left_Radius.java │ │ │ │ │ ├── AG_Border_Div_Border_Top_Right_Radius.java │ │ │ │ │ ├── AG_Border_Div_Border_Top_Width.java │ │ │ │ │ ├── AG_Border_Div_Border_Width.java │ │ │ │ │ ├── AG_Border_Image_Border_Bottom_Color.java │ │ │ │ │ ├── AG_Border_Image_Border_Bottom_Left_Radius.java │ │ │ │ │ ├── AG_Border_Image_Border_Bottom_Right_Radius.java │ │ │ │ │ ├── AG_Border_Image_Border_Bottom_Width.java │ │ │ │ │ ├── AG_Border_Image_Border_Color.java │ │ │ │ │ ├── AG_Border_Image_Border_Left_Color.java │ │ │ │ │ ├── AG_Border_Image_Border_Left_Width.java │ │ │ │ │ ├── AG_Border_Image_Border_Radius.java │ │ │ │ │ ├── AG_Border_Image_Border_Right_Color.java │ │ │ │ │ ├── AG_Border_Image_Border_Right_Width.java │ │ │ │ │ ├── AG_Border_Image_Border_Style.java │ │ │ │ │ ├── AG_Border_Image_Border_Top_Color.java │ │ │ │ │ ├── AG_Border_Image_Border_Top_Left_Radius.java │ │ │ │ │ ├── AG_Border_Image_Border_Top_Right_Radius.java │ │ │ │ │ ├── AG_Border_Image_Border_Top_Width.java │ │ │ │ │ ├── AG_Border_Image_Border_Width.java │ │ │ │ │ ├── AG_Border_Input_Border_Bottom_Color.java │ │ │ │ │ ├── AG_Border_Input_Border_Bottom_Left_Radius.java │ │ │ │ │ ├── AG_Border_Input_Border_Bottom_Right_Radius.java │ │ │ │ │ ├── AG_Border_Input_Border_Bottom_Width.java │ │ │ │ │ ├── AG_Border_Input_Border_Color.java │ │ │ │ │ ├── AG_Border_Input_Border_Left_Color.java │ │ │ │ │ ├── AG_Border_Input_Border_Left_Width.java │ │ │ │ │ ├── AG_Border_Input_Border_Radius.java │ │ │ │ │ ├── AG_Border_Input_Border_Right_Color.java │ │ │ │ │ ├── AG_Border_Input_Border_Right_Width.java │ │ │ │ │ ├── AG_Border_Input_Border_Style.java │ │ │ │ │ ├── AG_Border_Input_Border_Top_Color.java │ │ │ │ │ ├── AG_Border_Input_Border_Top_Left_Radius.java │ │ │ │ │ ├── AG_Border_Input_Border_Top_Right_Radius.java │ │ │ │ │ ├── AG_Border_Input_Border_Top_Width.java │ │ │ │ │ ├── AG_Border_Input_Border_Width.java │ │ │ │ │ ├── AG_Border_Switch_Border_Bottom_Color.java │ │ │ │ │ ├── AG_Border_Switch_Border_Bottom_Left_Radius.java │ │ │ │ │ ├── AG_Border_Switch_Border_Bottom_Right_Radius.java │ │ │ │ │ ├── AG_Border_Switch_Border_Bottom_Width.java │ │ │ │ │ ├── AG_Border_Switch_Border_Color.java │ │ │ │ │ ├── AG_Border_Switch_Border_Left_Color.java │ │ │ │ │ ├── AG_Border_Switch_Border_Left_Width.java │ │ │ │ │ ├── AG_Border_Switch_Border_Radius.java │ │ │ │ │ ├── AG_Border_Switch_Border_Right_Color.java │ │ │ │ │ ├── AG_Border_Switch_Border_Right_Width.java │ │ │ │ │ ├── AG_Border_Switch_Border_Style.java │ │ │ │ │ ├── AG_Border_Switch_Border_Top_Color.java │ │ │ │ │ ├── AG_Border_Switch_Border_Top_Left_Radius.java │ │ │ │ │ ├── AG_Border_Switch_Border_Top_Right_Radius.java │ │ │ │ │ ├── AG_Border_Switch_Border_Top_Width.java │ │ │ │ │ ├── AG_Border_Switch_Border_Width.java │ │ │ │ │ ├── AG_Border_Text_Border_Bottom_Color.java │ │ │ │ │ ├── AG_Border_Text_Border_Bottom_Left_Radius.java │ │ │ │ │ ├── AG_Border_Text_Border_Bottom_Right_Radius.java │ │ │ │ │ ├── AG_Border_Text_Border_Bottom_Width.java │ │ │ │ │ ├── AG_Border_Text_Border_Color.java │ │ │ │ │ ├── AG_Border_Text_Border_Left_Color.java │ │ │ │ │ ├── AG_Border_Text_Border_Left_Width.java │ │ │ │ │ ├── AG_Border_Text_Border_Radius.java │ │ │ │ │ ├── AG_Border_Text_Border_Right_Color.java │ │ │ │ │ ├── AG_Border_Text_Border_Right_Width.java │ │ │ │ │ ├── AG_Border_Text_Border_Style.java │ │ │ │ │ ├── AG_Border_Text_Border_Top_Color.java │ │ │ │ │ ├── AG_Border_Text_Border_Top_Left_Radius.java │ │ │ │ │ ├── AG_Border_Text_Border_Top_Right_Radius.java │ │ │ │ │ ├── AG_Border_Text_Border_Top_Width.java │ │ │ │ │ ├── AG_Border_Text_Border_Width.java │ │ │ │ │ ├── AG_Border_Video_Border_Bottom_Color.java │ │ │ │ │ ├── AG_Border_Video_Border_Bottom_Left_Radius.java │ │ │ │ │ ├── AG_Border_Video_Border_Bottom_Right_Radius.java │ │ │ │ │ ├── AG_Border_Video_Border_Bottom_Width.java │ │ │ │ │ ├── AG_Border_Video_Border_Color.java │ │ │ │ │ ├── AG_Border_Video_Border_Left_Color.java │ │ │ │ │ ├── AG_Border_Video_Border_Left_Width.java │ │ │ │ │ ├── AG_Border_Video_Border_Radius.java │ │ │ │ │ ├── AG_Border_Video_Border_Right_Color.java │ │ │ │ │ ├── AG_Border_Video_Border_Right_Width.java │ │ │ │ │ ├── AG_Border_Video_Border_Style.java │ │ │ │ │ ├── AG_Border_Video_Border_Top_Color.java │ │ │ │ │ ├── AG_Border_Video_Border_Top_Left_Radius.java │ │ │ │ │ ├── AG_Border_Video_Border_Top_Right_Radius.java │ │ │ │ │ ├── AG_Border_Video_Border_Top_Width.java │ │ │ │ │ ├── AG_Border_Video_Border_Width.java │ │ │ │ │ ├── AG_Border_Web_Border_Bottom_Color.java │ │ │ │ │ ├── AG_Border_Web_Border_Bottom_Left_Radius.java │ │ │ │ │ ├── AG_Border_Web_Border_Bottom_Right_Radius.java │ │ │ │ │ ├── AG_Border_Web_Border_Bottom_Width.java │ │ │ │ │ ├── AG_Border_Web_Border_Color.java │ │ │ │ │ ├── AG_Border_Web_Border_Left_Color.java │ │ │ │ │ ├── AG_Border_Web_Border_Left_Width.java │ │ │ │ │ ├── AG_Border_Web_Border_Radius.java │ │ │ │ │ ├── AG_Border_Web_Border_Right_Color.java │ │ │ │ │ ├── AG_Border_Web_Border_Right_Width.java │ │ │ │ │ ├── AG_Border_Web_Border_Style.java │ │ │ │ │ ├── AG_Border_Web_Border_Top_Color.java │ │ │ │ │ ├── AG_Border_Web_Border_Top_Left_Radius.java │ │ │ │ │ ├── AG_Border_Web_Border_Top_Right_Radius.java │ │ │ │ │ ├── AG_Border_Web_Border_Top_Width.java │ │ │ │ │ ├── AG_Border_Web_Border_Width.java │ │ │ │ │ ├── AG_CommonAttribute_A_If.java │ │ │ │ │ ├── AG_CommonAttribute_Div_If.java │ │ │ │ │ ├── AG_CommonAttribute_Image_If.java │ │ │ │ │ ├── AG_CommonAttribute_Input_If.java │ │ │ │ │ ├── AG_CommonAttribute_Switch_If.java │ │ │ │ │ ├── AG_CommonAttribute_Text_If.java │ │ │ │ │ ├── AG_CommonAttribute_Video_If.java │ │ │ │ │ ├── AG_CommonAttribute_Web_If.java │ │ │ │ │ ├── AG_CommonEvent_A_Onclick.java │ │ │ │ │ ├── AG_CommonEvent_Div_Onclick.java │ │ │ │ │ ├── AG_CommonEvent_Image_Onclick.java │ │ │ │ │ ├── AG_CommonEvent_Input_Onclick.java │ │ │ │ │ ├── AG_CommonEvent_Switch_Onclick.java │ │ │ │ │ ├── AG_CommonEvent_Text_Onclick.java │ │ │ │ │ ├── AG_CommonEvent_Video_Onclick.java │ │ │ │ │ ├── AG_CommonEvent_Web_Onclick.java │ │ │ │ │ ├── AG_CommonStyle_A_Background_Color.java │ │ │ │ │ ├── AG_CommonStyle_A_Widthandheight.java │ │ │ │ │ ├── AG_CommonStyle_Div_Background_Color.java │ │ │ │ │ ├── AG_CommonStyle_Div_Widthandheight.java │ │ │ │ │ ├── AG_CommonStyle_Image_Background_Color.java │ │ │ │ │ ├── AG_CommonStyle_Image_Widthandheight.java │ │ │ │ │ ├── AG_CommonStyle_Input_Background_Color.java │ │ │ │ │ ├── AG_CommonStyle_Input_Widthandheight.java │ │ │ │ │ ├── AG_CommonStyle_Switch_Background_Color.java │ │ │ │ │ ├── AG_CommonStyle_Switch_Widthandheight.java │ │ │ │ │ ├── AG_CommonStyle_Text_Background_Color.java │ │ │ │ │ ├── AG_CommonStyle_Text_Widthandheight.java │ │ │ │ │ ├── AG_CommonStyle_Video_Background_Color.java │ │ │ │ │ ├── AG_CommonStyle_Video_Widthandheight.java │ │ │ │ │ ├── AG_CommonStyle_Web_Background_Color.java │ │ │ │ │ ├── AG_CommonStyle_Web_Widthandheight.java │ │ │ │ │ ├── AG_Gesture_Div_Click.java │ │ │ │ │ ├── AG_Gesture_Div_Conflict.java │ │ │ │ │ ├── AG_Gesture_Div_Longpress.java │ │ │ │ │ ├── AG_Gesture_Div_Pan.java │ │ │ │ │ ├── AG_Gesture_Div_Swipe.java │ │ │ │ │ ├── AG_Gesture_Div_Touch.java │ │ │ │ │ ├── AG_Image_Image_Onload.java │ │ │ │ │ ├── AG_Image_Image_Resize.java │ │ │ │ │ ├── AG_Image_Image_Src.java │ │ │ │ │ ├── AG_Input_Input_Autofocus.java │ │ │ │ │ ├── AG_Input_Input_Color.java │ │ │ │ │ ├── AG_Input_Input_Disabled.java │ │ │ │ │ ├── AG_Input_Input_Event.java │ │ │ │ │ ├── AG_Input_Input_Font_Size.java │ │ │ │ │ ├── AG_Input_Input_Font_Style.java │ │ │ │ │ ├── AG_Input_Input_Font_Weight.java │ │ │ │ │ ├── AG_Input_Input_Placeholder.java │ │ │ │ │ ├── AG_Input_Input_Placeholder_Color.java │ │ │ │ │ ├── AG_Input_Input_Text_Align.java │ │ │ │ │ ├── AG_Input_Input_Type.java │ │ │ │ │ ├── AG_Input_Input_Value.java │ │ │ │ │ ├── AG_Margin_A_Margin.java │ │ │ │ │ ├── AG_Margin_A_Margin_Bottom.java │ │ │ │ │ ├── AG_Margin_A_Margin_Left.java │ │ │ │ │ ├── AG_Margin_A_Margin_Right.java │ │ │ │ │ ├── AG_Margin_A_Margin_Top.java │ │ │ │ │ ├── AG_Margin_Div_Margin.java │ │ │ │ │ ├── AG_Margin_Div_Margin_Bottom.java │ │ │ │ │ ├── AG_Margin_Div_Margin_Left.java │ │ │ │ │ ├── AG_Margin_Div_Margin_Right.java │ │ │ │ │ ├── AG_Margin_Div_Margin_Top.java │ │ │ │ │ ├── AG_Margin_Image_Margin.java │ │ │ │ │ ├── AG_Margin_Image_Margin_Bottom.java │ │ │ │ │ ├── AG_Margin_Image_Margin_Left.java │ │ │ │ │ ├── AG_Margin_Image_Margin_Right.java │ │ │ │ │ ├── AG_Margin_Image_Margin_Top.java │ │ │ │ │ ├── AG_Margin_Input_Margin.java │ │ │ │ │ ├── AG_Margin_Input_Margin_Bottom.java │ │ │ │ │ ├── AG_Margin_Input_Margin_Left.java │ │ │ │ │ ├── AG_Margin_Input_Margin_Right.java │ │ │ │ │ ├── AG_Margin_Input_Margin_Top.java │ │ │ │ │ ├── AG_Margin_Switch_Margin.java │ │ │ │ │ ├── AG_Margin_Switch_Margin_Bottom.java │ │ │ │ │ ├── AG_Margin_Switch_Margin_Left.java │ │ │ │ │ ├── AG_Margin_Switch_Margin_Right.java │ │ │ │ │ ├── AG_Margin_Switch_Margin_Top.java │ │ │ │ │ ├── AG_Margin_Text_Margin.java │ │ │ │ │ ├── AG_Margin_Text_Margin_Bottom.java │ │ │ │ │ ├── AG_Margin_Text_Margin_Left.java │ │ │ │ │ ├── AG_Margin_Text_Margin_Right.java │ │ │ │ │ ├── AG_Margin_Text_Margin_Top.java │ │ │ │ │ ├── AG_Margin_Video_Margin.java │ │ │ │ │ ├── AG_Margin_Video_Margin_Bottom.java │ │ │ │ │ ├── AG_Margin_Video_Margin_Left.java │ │ │ │ │ ├── AG_Margin_Video_Margin_Right.java │ │ │ │ │ ├── AG_Margin_Video_Margin_Top.java │ │ │ │ │ ├── AG_Margin_Web_Margin.java │ │ │ │ │ ├── AG_Margin_Web_Margin_Bottom.java │ │ │ │ │ ├── AG_Margin_Web_Margin_Left.java │ │ │ │ │ ├── AG_Margin_Web_Margin_Right.java │ │ │ │ │ ├── AG_Margin_Web_Margin_Top.java │ │ │ │ │ ├── AG_Switch_Switch_Checked.java │ │ │ │ │ ├── AG_Switch_Switch_Onchange.java │ │ │ │ │ ├── AG_Text_Text_Color.java │ │ │ │ │ ├── AG_Text_Text_Font_Size.java │ │ │ │ │ ├── AG_Text_Text_Font_Style.java │ │ │ │ │ ├── AG_Text_Text_Font_Weight.java │ │ │ │ │ ├── AG_Text_Text_Line_Height.java │ │ │ │ │ ├── AG_Text_Text_Text_Align.java │ │ │ │ │ ├── AG_Text_Text_Text_Decoration.java │ │ │ │ │ ├── AG_Text_Text_Text_Overflow.java │ │ │ │ │ ├── AG_Text_Text_Value.java │ │ │ │ │ ├── AG_Video_Video_Auto_Play.java │ │ │ │ │ ├── AG_Video_Video_Event.java │ │ │ │ │ ├── AG_Video_Video_Play_Status.java │ │ │ │ │ ├── AG_Video_Video_Src.java │ │ │ │ │ ├── AG_Web_Web_Event.java │ │ │ │ │ └── AG_Web_Web_Src.java │ │ │ │ │ ├── TC_AHref │ │ │ │ │ ├── WeexUiTestCaseTCAHrefEvent.java │ │ │ │ │ ├── WeexUiTestCaseTCAHrefStyle.java │ │ │ │ │ └── WeexUiTestCaseTCAHrefUpdate.java │ │ │ │ │ ├── TC_Animation │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_AppendTree │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_BizComponet │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_BizModule │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_Color │ │ │ │ │ ├── WeexUiTestCaseTcColorType.java │ │ │ │ │ └── WeexUiTestCaseTcColorUpdate.java │ │ │ │ │ ├── TC_DataBind │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_Downgrade │ │ │ │ │ ├── WeexUiTestCaseTcDowngradeAppVFalse.java │ │ │ │ │ ├── WeexUiTestCaseTcDowngradeAppVTrue.java │ │ │ │ │ ├── WeexUiTestCaseTcDowngradeDevMFalse.java │ │ │ │ │ ├── WeexUiTestCaseTcDowngradeDevMTrue.java │ │ │ │ │ ├── WeexUiTestCaseTcDowngradeOSVFalse.java │ │ │ │ │ ├── WeexUiTestCaseTcDowngradeOSVTrue.java │ │ │ │ │ ├── WeexUiTestCaseTcDowngradeWeexVFalse.java │ │ │ │ │ └── WeexUiTestCaseTcDowngradeWeexVTrue.java │ │ │ │ │ ├── TC_Gesture │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_Image │ │ │ │ │ └── WeexUiTestCaseTcImageUpdate.java │ │ │ │ │ ├── TC_Input │ │ │ │ │ ├── WeexUiTestCaseTcInputEvent.java │ │ │ │ │ ├── WeexUiTestCaseTcInputPlaceholder.java │ │ │ │ │ ├── WeexUiTestCaseTcInputStyle.java │ │ │ │ │ └── WeexUiTestCaseTcInputType.java │ │ │ │ │ ├── TC_List │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_Monitor │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_PopBox │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_Scroller │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_Select │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_Slider │ │ │ │ │ └── WeexUiTestCaseTcSlider.java │ │ │ │ │ ├── TC_Style │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_Switch │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_Text │ │ │ │ │ ├── WeexUiTestCaseTcTextStyleColumn.java │ │ │ │ │ ├── WeexUiTestCaseTcTextStyleOwn.java │ │ │ │ │ ├── WeexUiTestCaseTcTextStyleRow.java │ │ │ │ │ └── WeexUiTestCaseTcTextType.java │ │ │ │ │ ├── TC_Video │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── TC_Web │ │ │ │ │ └── .gitignore │ │ │ │ │ └── WeexUiTestCaseTcElementOpt.java │ │ │ │ └── util │ │ │ │ ├── Falcon.java │ │ │ │ ├── ScreenShot.java │ │ │ │ ├── SdCardHelper.java │ │ │ │ ├── TestFlow.java │ │ │ │ └── ViewUtil.java │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── assets │ │ │ ├── about.weex.js │ │ │ ├── examples.weex.js │ │ │ ├── guide.weex.js │ │ │ ├── landing.weex.js │ │ │ ├── lite_template │ │ │ │ ├── card.wasm │ │ │ │ └── case.js │ │ │ ├── news.weex.js │ │ │ ├── videoplus.js │ │ │ └── weex_config_search.json │ │ │ ├── ic_launcher-web.png │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── weex │ │ │ │ ├── BenchmarkActivity.java │ │ │ │ ├── CustomCaptureActivity.java │ │ │ │ ├── IndexActivity.java │ │ │ │ ├── SliceTestActivity.java │ │ │ │ ├── SplashActivity.java │ │ │ │ ├── Utility.java │ │ │ │ ├── WXApplication.java │ │ │ │ ├── WXBaseActivity.java │ │ │ │ ├── WXPageActivity.java │ │ │ │ ├── WXPreLoadManager.java │ │ │ │ ├── constants │ │ │ │ └── Constants.java │ │ │ │ ├── extend │ │ │ │ ├── WXInstanceStatisticsListener.java │ │ │ │ ├── adapter │ │ │ │ │ ├── ApmGenerator.java │ │ │ │ │ ├── DefaultAccessibilityRoleAdapter.java │ │ │ │ │ ├── DefaultConfigAdapter.java │ │ │ │ │ ├── InterceptWXHttpAdapter.java │ │ │ │ │ ├── WXAnalyzerDemoListener.java │ │ │ │ │ └── WXInstanceApmAdapter.java │ │ │ │ ├── component │ │ │ │ │ ├── RichText.java │ │ │ │ │ ├── WXComponentSyncTest.java │ │ │ │ │ ├── WXMask.java │ │ │ │ │ └── WXParallax.java │ │ │ │ ├── module │ │ │ │ │ ├── GeolocationModule.java │ │ │ │ │ ├── MyModule.java │ │ │ │ │ ├── RenderModule.java │ │ │ │ │ ├── SyncTestModule.java │ │ │ │ │ ├── WXEventModule.java │ │ │ │ │ ├── WXTitleBar.java │ │ │ │ │ ├── WXWsonTestModule.java │ │ │ │ │ └── location │ │ │ │ │ │ ├── DefaultLocation.java │ │ │ │ │ │ ├── ILocatable.java │ │ │ │ │ │ └── LocationFactory.java │ │ │ │ └── view │ │ │ │ │ └── WXMaskView.java │ │ │ │ ├── https │ │ │ │ ├── HotRefreshManager.java │ │ │ │ ├── WXHttpManager.java │ │ │ │ ├── WXHttpResponse.java │ │ │ │ ├── WXHttpTask.java │ │ │ │ ├── WXOkHttpDispatcher.java │ │ │ │ └── WXRequestListener.java │ │ │ │ ├── thirdParty │ │ │ │ └── zxing │ │ │ │ │ ├── DBHelper.java │ │ │ │ │ ├── HistoryActivity.java │ │ │ │ │ ├── HistoryItem.java │ │ │ │ │ ├── HistoryItemAdapter.java │ │ │ │ │ └── HistoryManager.java │ │ │ │ ├── update │ │ │ │ ├── CheckForUpdateUtil.java │ │ │ │ ├── Downloader.java │ │ │ │ └── UpdateService.java │ │ │ │ └── util │ │ │ │ ├── CoverageDataDumper.java │ │ │ │ └── JacocoCodeCoverage.java │ │ │ └── res │ │ │ ├── drawable-hdpi │ │ │ ├── ic_action_refresh.png │ │ │ └── ic_action_scan.png │ │ │ ├── drawable-mdpi │ │ │ ├── ic_action_refresh.png │ │ │ └── ic_action_scan.png │ │ │ ├── drawable-v21 │ │ │ ├── ic_menu_camera.xml │ │ │ ├── ic_menu_gallery.xml │ │ │ ├── ic_menu_manage.xml │ │ │ ├── ic_menu_send.xml │ │ │ ├── ic_menu_share.xml │ │ │ └── ic_menu_slideshow.xml │ │ │ ├── drawable-xhdpi │ │ │ ├── ic_action_refresh.png │ │ │ └── ic_action_scan.png │ │ │ ├── drawable-xxhdpi │ │ │ ├── ic_action_refresh.png │ │ │ └── ic_action_scan.png │ │ │ ├── drawable │ │ │ └── side_nav_bar.xml │ │ │ ├── layout │ │ │ ├── activity_index.xml │ │ │ ├── activity_qrcode.xml │ │ │ ├── activity_slice_test.xml │ │ │ ├── activity_splash.xml │ │ │ ├── activity_wxpage.xml │ │ │ ├── app_bar_main.xml │ │ │ ├── common_update_notify_dialog.xml │ │ │ ├── content_main.xml │ │ │ ├── content_wx_main.xml │ │ │ ├── hello_weex.xml │ │ │ ├── history_list_item.xml │ │ │ ├── id_stub.xml │ │ │ └── layout_zxing.xml │ │ │ ├── menu │ │ │ ├── capture.xml │ │ │ ├── history.xml │ │ │ ├── main.xml │ │ │ ├── main_scan.xml │ │ │ └── refresh.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ └── beep.ogg │ │ │ ├── values-v21 │ │ │ └── styles.xml │ │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ │ ├── values-zh-rCN │ │ │ └── strings.xml │ │ │ ├── values │ │ │ ├── attrs.xml │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── drawables.xml │ │ │ ├── scan_code_dimens.xml │ │ │ ├── scan_code_strings.xml │ │ │ ├── strings.xml │ │ │ ├── styles.xml │ │ │ └── themes.xml │ │ │ └── xml │ │ │ └── filepaths.xml │ └── tools │ │ └── weex.jks └── settings.gradle ├── dangerfile-android.js ├── dangerfile-ios.js ├── ios ├── .gitignore ├── Podfile ├── README.md ├── WeexDemo.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── wm.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcshareddata │ │ └── xcschemes │ │ ├── WeexDemo.xcscheme │ │ └── WeexUITestDemo.xcscheme ├── WeexDemo.xcworkspace │ ├── contents.xcworkspacedata │ ├── xcshareddata │ │ └── IDEWorkspaceChecks.plist │ └── xcuserdata │ │ ├── wangrenmin.xcuserdatad │ │ └── UserInterfaceState.xcuserstate │ │ └── wm.xcuserdatad │ │ └── UserInterfaceState.xcuserstate ├── WeexDemo │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ ├── AppStoreIcon1024.png │ │ │ ├── Contents.json │ │ │ ├── Icon-29.png │ │ │ ├── Icon-29@2x-1.png │ │ │ ├── Icon-29@2x.png │ │ │ ├── Icon-29@3x.png │ │ │ ├── Icon-40.png │ │ │ ├── Icon-40@2x-1.png │ │ │ ├── Icon-40@2x.png │ │ │ ├── Icon-40@3x.png │ │ │ ├── Icon-60@2x.png │ │ │ ├── Icon-60@3x.png │ │ │ ├── Icon-76.png │ │ │ ├── Icon-76@2x.png │ │ │ └── Icon-83.5@2x.png │ │ ├── Contents.json │ │ ├── LaunchImage.launchimage │ │ │ ├── Contents.json │ │ │ ├── Default-568h@2x.png │ │ │ ├── Default@2x.png │ │ │ ├── Retinal HD 4.7.png │ │ │ ├── Retinal HD 5.5.png │ │ │ ├── iPhone5.5-landscape.png │ │ │ ├── iPhoneX-landscape.png │ │ │ ├── iPhoneX@3x.png │ │ │ ├── iPhoneXMax@3x.png │ │ │ └── iPhoneXR@2x.png │ │ ├── back.imageset │ │ │ ├── Contents.json │ │ │ ├── back.png │ │ │ ├── back@2x.png │ │ │ └── back@3x.png │ │ ├── delete.imageset │ │ │ ├── Contents.json │ │ │ ├── delete.png │ │ │ ├── delete@2x.png │ │ │ └── delete@3x.png │ │ ├── reload.imageset │ │ │ ├── Contents.json │ │ │ ├── reload.png │ │ │ ├── reload@2x.png │ │ │ └── reload@3x.png │ │ ├── scan.imageset │ │ │ ├── Contents.json │ │ │ ├── scan.png │ │ │ ├── scan@2x.png │ │ │ └── scan@3x.png │ │ └── scan_history.imageset │ │ │ ├── Contents.json │ │ │ ├── history.png │ │ │ ├── history@2x.png │ │ │ └── history@3x.png │ ├── DemoBaseViewController.h │ ├── DemoBaseViewController.m │ ├── DemoDefine.h │ ├── Images.xcassets │ │ └── Brand Assets.launchimage │ │ │ └── Contents.json │ ├── Info.plist │ ├── Scanner │ │ ├── WXScannerHistoryVC.h │ │ ├── WXScannerHistoryVC.m │ │ ├── WXScannerVC.h │ │ └── WXScannerVC.m │ ├── UIView+UIThreadCheck.h │ ├── UIView+UIThreadCheck.m │ ├── UIViewController+WXDemoNaviBar.h │ ├── UIViewController+WXDemoNaviBar.m │ ├── WXConfigCenterDefaultImpl.h │ ├── WXConfigCenterDefaultImpl.m │ ├── WXDemoViewController.h │ ├── WXDemoViewController.m │ ├── WXExtModule.h │ ├── WXExtModule.m │ ├── WXExtendCallNativeTest.h │ ├── WXExtendCallNativeTest.m │ ├── WXNavigationHandlerImpl.h │ ├── WXNavigationHandlerImpl.m │ ├── WXSyncTestModule.h │ ├── WXSyncTestModule.m │ ├── Websocket │ │ ├── SRWebSocket+Weex.h │ │ ├── SRWebSocket+Weex.m │ │ ├── WXWebSocketDefaultImpl.h │ │ └── WXWebSocketDefaultImpl.m │ ├── debug │ │ ├── DebugAnalyzer.h │ │ ├── DebugAnzlyzer.m │ │ ├── WXATLoggerPlugin.h │ │ ├── WXATLoggerPlugin.m │ │ ├── WXATViewHierarchyPlugin.h │ │ └── WXATViewHierarchyPlugin.m │ ├── extend │ │ ├── component │ │ │ ├── WXSelectComponent.h │ │ │ └── WXSelectComponent.m │ │ ├── handler │ │ │ ├── WXApmGeneratorImpl.h │ │ │ ├── WXApmGeneratorImpl.m │ │ │ ├── WXApmImpl.h │ │ │ ├── WXApmImpl.m │ │ │ ├── WXImgLoaderDefaultImpl.h │ │ │ └── WXImgLoaderDefaultImpl.m │ │ └── module │ │ │ ├── WXEventModule.h │ │ │ ├── WXEventModule.m │ │ │ ├── WXTitleBarModule.h │ │ │ └── WXTitleBarModule.m │ ├── main.m │ └── weex-icon.png ├── WeexDemoTests │ ├── Info.plist │ └── WeexDemoTests.m ├── WeexUITestDemo-Info.plist ├── WeexUITestDemoUITests │ ├── Info.plist │ └── WeexUITestDemoUITests.m ├── bundlejs │ ├── about.weex.js │ ├── examples.weex.js │ ├── guide.weex.js │ ├── landing.weex.js │ └── news.weex.js ├── update_podfile_for_travisci.sh ├── weex.png └── weex@2x.png ├── package-lock.json └── package.json /DISCLAIMER: -------------------------------------------------------------------------------- 1 | Apache Weex is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF. -------------------------------------------------------------------------------- /NOTICE: -------------------------------------------------------------------------------- 1 | Apache Weex (Incubating) 2 | Copyright 2019 The Apache Software Foundation 3 | 4 | This product includes software developed at 5 | The Apache Software Foundation (http://www.apache.org/). -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # incubator-weex-playground [![Build Status](https://travis-ci.org/apache/incubator-weex-playground.svg?branch=master)](https://travis-ci.org/apache/incubator-weex-playground) 2 | Weex Playground is a development tool, which can be used to test and preview weex pages on Android or IOS. 3 | 4 | Find more about playground at our [website](https://weex.apache.org/guide/playground.html). 5 | 6 | ## Run Weex Playground 7 | ### Android 8 | * Open `android` In Android Studio 9 | * In `playground/java/org.apache.weex/IndexActivity`, modify `CURRENT_IP` to your local IP 10 | * Click (`Run` button) 11 | 12 | ### iOS 13 | * [Install `CocoaPods`](https://guides.cocoapods.org/using/getting-started.html#installation). 14 | * Open `ios` directory, then execute `pod install` in terminal. 15 | * Open `WeexDemo.xcworkspace` with Xcode. 16 | * Click (`Run` button) 17 | -------------------------------------------------------------------------------- /RETIRED.txt: -------------------------------------------------------------------------------- 1 | This podling has been retired, please see: http://incubator.apache.org/projects/index.html#weex 2 | -------------------------------------------------------------------------------- /android/.gitignore: -------------------------------------------------------------------------------- 1 | .gradle 2 | .idea 3 | local.properties 4 | .classpath 5 | *iml 6 | playground/src/main/jniLibs 7 | build 8 | captures 9 | .settings 10 | .project 11 | -------------------------------------------------------------------------------- /android/build.gradle: -------------------------------------------------------------------------------- 1 | 2 | buildscript { 3 | repositories { 4 | google() 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:3.6.1' 9 | } 10 | } 11 | subprojects { 12 | repositories { 13 | google() 14 | maven() { 15 | url 'http://oss.jfrog.org/oss-snapshot-local/' 16 | } 17 | jcenter() 18 | } 19 | buildscript { 20 | repositories { 21 | google() 22 | jcenter() 23 | } 24 | } 25 | } 26 | ext { 27 | compileSdkVersion=28 28 | minSdkVersion=14 29 | targetSdkVersion=28 30 | supportLibVersion="28.0.0" 31 | fastjsonLibVersion="1.1.46.android" 32 | weexSdkVersion="0.29.0.1-SNAPSHOT" 33 | implementFromWeex = false 34 | } 35 | -------------------------------------------------------------------------------- /android/commons/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in /Users/sospartan/sdks/android_sdk20130219/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | -------------------------------------------------------------------------------- /android/commons/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 19 | 21 | 22 | -------------------------------------------------------------------------------- /android/commons/src/main/java/org/apache/weex/commons/SimpleWeexActivity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.commons; 20 | 21 | import android.os.Bundle; 22 | import android.support.annotation.Nullable; 23 | import android.view.ViewGroup; 24 | import com.taobao.weex.WXSDKInstance; 25 | 26 | /** 27 | * Basic Weex powered Activity. 28 | * Created by sospartan on 5/31/16. 29 | */ 30 | public abstract class SimpleWeexActivity extends AbstractWeexActivity { 31 | 32 | @Override 33 | protected void onCreate(@Nullable Bundle savedInstanceState) { 34 | super.onCreate(savedInstanceState); 35 | setContainer((ViewGroup) findViewById(android.R.id.content)); 36 | } 37 | 38 | @Override 39 | public void onRenderSuccess(WXSDKInstance instance, int width, int height) { 40 | super.onRenderSuccess(instance,width,height); 41 | } 42 | 43 | @Override 44 | public void onException(WXSDKInstance instance, String errCode, String msg) { 45 | super.onException(instance,errCode,msg); 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /android/commons/src/main/java/org/apache/weex/commons/adapter/BlurTransformation.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.commons.adapter; 20 | 21 | import android.graphics.Bitmap; 22 | 23 | import com.squareup.picasso.Transformation; 24 | 25 | public class BlurTransformation implements Transformation { 26 | 27 | private int mRadius; 28 | 29 | public BlurTransformation(int radius) { 30 | mRadius = radius; 31 | } 32 | 33 | @Override public Bitmap transform(Bitmap source) { 34 | if(mRadius <= 0) { 35 | return source; 36 | } 37 | Bitmap bitmap; 38 | try { 39 | bitmap = BlurTool.blur(source, mRadius); 40 | }catch (Exception e){ 41 | bitmap = source; 42 | } 43 | if(bitmap != source) { 44 | source.recycle(); 45 | } 46 | return bitmap; 47 | } 48 | 49 | @Override public String key() { 50 | return "BlurTransformation(radius=" + mRadius + ")"; 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /android/commons/src/main/java/org/apache/weex/commons/adapter/DefaultWebSocketAdapterFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.commons.adapter; 20 | 21 | import com.taobao.weex.appfram.websocket.IWebSocketAdapter; 22 | import com.taobao.weex.appfram.websocket.IWebSocketAdapterFactory; 23 | 24 | /** 25 | * Created by moxun on 16/12/28. 26 | */ 27 | 28 | public class DefaultWebSocketAdapterFactory implements IWebSocketAdapterFactory { 29 | @Override 30 | public IWebSocketAdapter createWebSocketAdapter() { 31 | return new DefaultWebSocketAdapter(); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /android/commons/src/main/java/org/apache/weex/commons/adapter/FrescoImageComponent.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.commons.adapter; 20 | 21 | import android.content.Context; 22 | import android.support.annotation.NonNull; 23 | import android.widget.ImageView; 24 | import com.taobao.weex.WXSDKInstance; 25 | import com.taobao.weex.ui.action.BasicComponentData; 26 | import com.taobao.weex.ui.component.WXImage; 27 | import com.taobao.weex.ui.component.WXVContainer; 28 | 29 | /** 30 | * Created by sospartan on 8/19/16. 31 | */ 32 | public class FrescoImageComponent extends WXImage { 33 | 34 | public FrescoImageComponent(WXSDKInstance instance, WXVContainer parent, BasicComponentData basicComponentData) { 35 | super(instance, parent, basicComponentData); 36 | } 37 | 38 | @Override 39 | protected ImageView initComponentHostView(@NonNull Context context) { 40 | FrescoImageView view = new FrescoImageView(context); 41 | view.setScaleType(ImageView.ScaleType.FIT_XY); 42 | 43 | return view; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /android/commons/src/main/java/org/apache/weex/commons/adapter/JSExceptionAdapter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.commons.adapter; 20 | 21 | import com.taobao.weex.WXEnvironment; 22 | import com.taobao.weex.adapter.IWXJSExceptionAdapter; 23 | import com.taobao.weex.common.WXJSExceptionInfo; 24 | import com.taobao.weex.utils.WXLogUtils; 25 | 26 | /** 27 | */ 28 | 29 | public class JSExceptionAdapter implements IWXJSExceptionAdapter { 30 | 31 | @Override 32 | public void onJSException(WXJSExceptionInfo exception) { 33 | if (exception != null && WXEnvironment.isApkDebugable()) { 34 | WXLogUtils.d(exception.toString()); 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /android/commons/src/main/java/org/apache/weex/commons/util/AssertUtil.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.commons.util; 20 | 21 | /** 22 | * Created by sospartan on 5/31/16. 23 | */ 24 | public class AssertUtil { 25 | public static void throwIfNull(Object object,T e) throws T { 26 | if(object == null){ 27 | throw e; 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /android/commons/src/main/java/org/apache/weex/commons/util/RequestIdGenerator.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.commons.util; 20 | 21 | import java.util.concurrent.atomic.AtomicInteger; 22 | 23 | /** 24 | * Created by moxun on 17/4/20. 25 | */ 26 | 27 | public class RequestIdGenerator { 28 | private static final AtomicInteger sIdGenerator = new AtomicInteger(0); 29 | 30 | public static int nextRequestId() { 31 | return sIdGenerator.getAndIncrement(); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /android/commons/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 21 | 22 | My Module 23 | 24 | -------------------------------------------------------------------------------- /android/gradle.properties: -------------------------------------------------------------------------------- 1 | ## Project-wide Gradle settings. 2 | # 3 | # For more details on how to configure your build environment visit 4 | # http://www.gradle.org/docs/current/userguide/build_environment.html 5 | # 6 | # Specifies the JVM arguments used for the daemon process. 7 | # The setting is particularly useful for tweaking memory settings. 8 | # Default value: -Xmx10248m -XX:MaxPermSize=256m 9 | # 10 | # When configured, Gradle will run in incubating parallel mode. 11 | # This option should only be used with decoupled projects. More details, visit 12 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 13 | #Mon Jun 27 20:06:22 CST 2016 14 | org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 15 | org.gradle.parallel=true 16 | #android.enableAapt2=false 17 | #android.enableD8=false -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /android/license/LICENSE: -------------------------------------------------------------------------------- 1 | Licensed to the Apache Software Foundation (ASF) under one 2 | or more contributor license agreements. See the NOTICE file 3 | distributed with this work for additional information 4 | regarding copyright ownership. The ASF licenses this file 5 | to you under the Apache License, Version 2.0 (the 6 | "License"); you may not use this file except in compliance 7 | with the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, 12 | software distributed under the License is distributed on an 13 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | KIND, either express or implied. See the License for the 15 | specific language governing permissions and limitations 16 | under the License. -------------------------------------------------------------------------------- /android/playground/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in /Users/lixinke/Tool/android-eclipse/adt-bundle-mac-x86_64-20140702/sdk/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | ##weex 19 | -keep class com.taobao.weex.bridge.**{*;} 20 | -keep class com.taobao.weex.dom.**{*;} 21 | -keep class com.taobao.weex.adapter.**{*;} 22 | -keep class com.taobao.weex.common.**{*;} 23 | -keep class * implements com.taobao.weex.IWXObject{*;} 24 | -keep class com.taobao.weex.ui.**{*;} 25 | -keep class com.taobao.weex.ui.component.**{*;} 26 | -keep class com.taobao.weex.utils.**{ 27 | public ; 28 | public ; 29 | } 30 | -keep class com.taobao.weex.view.**{*;} 31 | -keep class com.taobao.weex.module.**{*;} 32 | -keep public class * extends com.taobao.weex.common.WXModule{*;} -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex; 20 | 21 | import android.app.Application; 22 | import android.test.ApplicationTestCase; 23 | 24 | /** 25 | * Testing Fundamentals 26 | */ 27 | public class ApplicationTest extends ApplicationTestCase { 28 | public ApplicationTest() { 29 | super(Application.class); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/benchmark/Repeat.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | 20 | package org.apache.weex.benchmark; 21 | 22 | import static java.lang.annotation.ElementType.ANNOTATION_TYPE; 23 | import static java.lang.annotation.ElementType.METHOD; 24 | 25 | import java.lang.annotation.Retention; 26 | import java.lang.annotation.RetentionPolicy; 27 | import java.lang.annotation.Target; 28 | 29 | @Retention( RetentionPolicy.RUNTIME ) 30 | @Target({ METHOD, ANNOTATION_TYPE }) 31 | public @interface Repeat { 32 | int value() default 1; 33 | } 34 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_AHref_A_Href.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_AHref_A_Href extends TestFlow { 27 | public AG_AHref_A_Href() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_AHref"); 36 | testMap.put("testChildCaseInit", "AG_AHref_A_Href"); 37 | testMap.put("step1",new TreeMap(){ 38 | { 39 | put("click", "href0"); 40 | put("screenshot", "AG_AHref_A_Href_01_href0"); 41 | } 42 | }); 43 | testMap.put("step2",new TreeMap(){ 44 | { 45 | put("click", "href1"); 46 | put("screenshot", "AG_AHref_A_Href_02_href1"); 47 | } 48 | }); 49 | super.setTestMap(testMap); 50 | } 51 | 52 | @Test 53 | public void doTest(){ 54 | super.testByTestMap(); 55 | } 56 | 57 | } 58 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_CommonEvent_A_Onclick.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_CommonEvent_A_Onclick extends TestFlow { 27 | public AG_CommonEvent_A_Onclick() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_CommonEvent"); 36 | testMap.put("testChildCaseInit", "AG_CommonEvent_A_Onclick"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_CommonEvent_Div_Onclick.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_CommonEvent_Div_Onclick extends TestFlow { 27 | public AG_CommonEvent_Div_Onclick() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_CommonEvent"); 36 | testMap.put("testChildCaseInit", "AG_CommonEvent_Div_Onclick"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_CommonEvent_Image_Onclick.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_CommonEvent_Image_Onclick extends TestFlow { 27 | public AG_CommonEvent_Image_Onclick() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_CommonEvent"); 36 | testMap.put("testChildCaseInit", "AG_CommonEvent_Image_Onclick"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_CommonEvent_Input_Onclick.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_CommonEvent_Input_Onclick extends TestFlow { 27 | public AG_CommonEvent_Input_Onclick() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_CommonEvent"); 36 | testMap.put("testChildCaseInit", "AG_CommonEvent_Input_Onclick"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_CommonEvent_Switch_Onclick.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_CommonEvent_Switch_Onclick extends TestFlow { 27 | public AG_CommonEvent_Switch_Onclick() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_CommonEvent"); 36 | testMap.put("testChildCaseInit", "AG_CommonEvent_Switch_Onclick"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_CommonEvent_Text_Onclick.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_CommonEvent_Text_Onclick extends TestFlow { 27 | public AG_CommonEvent_Text_Onclick() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_CommonEvent"); 36 | testMap.put("testChildCaseInit", "AG_CommonEvent_Text_Onclick"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_CommonEvent_Video_Onclick.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_CommonEvent_Video_Onclick extends TestFlow { 27 | public AG_CommonEvent_Video_Onclick() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_CommonEvent"); 36 | testMap.put("testChildCaseInit", "AG_CommonEvent_Video_Onclick"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_CommonEvent_Web_Onclick.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_CommonEvent_Web_Onclick extends TestFlow { 27 | public AG_CommonEvent_Web_Onclick() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_CommonEvent"); 36 | testMap.put("testChildCaseInit", "AG_CommonEvent_Web_Onclick"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Gesture_Div_Click.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Gesture_Div_Click extends TestFlow { 27 | public AG_Gesture_Div_Click() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Gesture"); 36 | testMap.put("testChildCaseInit", "AG_Gesture_Div_Click"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Gesture_Div_Conflict.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Gesture_Div_Conflict extends TestFlow { 27 | public AG_Gesture_Div_Conflict() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Gesture"); 36 | testMap.put("testChildCaseInit", "AG_Gesture_Div_Conflict"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Gesture_Div_Longpress.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Gesture_Div_Longpress extends TestFlow { 27 | public AG_Gesture_Div_Longpress() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Gesture"); 36 | testMap.put("testChildCaseInit", "AG_Gesture_Div_Longpress"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Gesture_Div_Pan.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Gesture_Div_Pan extends TestFlow { 27 | public AG_Gesture_Div_Pan() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Gesture"); 36 | testMap.put("testChildCaseInit", "AG_Gesture_Div_Pan"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Gesture_Div_Swipe.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Gesture_Div_Swipe extends TestFlow { 27 | public AG_Gesture_Div_Swipe() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Gesture"); 36 | testMap.put("testChildCaseInit", "AG_Gesture_Div_Swipe"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Gesture_Div_Touch.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Gesture_Div_Touch extends TestFlow { 27 | public AG_Gesture_Div_Touch() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Gesture"); 36 | testMap.put("testChildCaseInit", "AG_Gesture_Div_Touch"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Image_Image_Onload.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Image_Image_Onload extends TestFlow { 27 | public AG_Image_Image_Onload() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Image"); 36 | testMap.put("testChildCaseInit", "AG_Image_Image_Onload"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Input_Input_Event.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Input_Input_Event extends TestFlow { 27 | public AG_Input_Input_Event() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Input"); 36 | testMap.put("testChildCaseInit", "AG_Input_Input_Event"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Margin_A_Margin.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Margin_A_Margin extends TestFlow { 27 | public AG_Margin_A_Margin() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Margin"); 36 | testMap.put("testChildCaseInit", "AG_Margin_A_Margin"); 37 | testMap.put("step1",new TreeMap(){ 38 | { 39 | put("click", "10"); 40 | put("screenshot", "AG_Margin_A_Margin_01_10"); 41 | } 42 | }); 43 | testMap.put("step2",new TreeMap(){ 44 | { 45 | put("click", "20"); 46 | put("screenshot", "AG_Margin_A_Margin_02_20"); 47 | } 48 | }); 49 | super.setTestMap(testMap); 50 | } 51 | 52 | @Test 53 | public void doTest(){ 54 | super.testByTestMap(); 55 | } 56 | 57 | } 58 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Switch_Switch_Onchange.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Switch_Switch_Onchange extends TestFlow { 27 | public AG_Switch_Switch_Onchange() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Switch"); 36 | testMap.put("testChildCaseInit", "AG_Switch_Switch_Onchange"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Video_Video_Event.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Video_Video_Event extends TestFlow { 27 | public AG_Video_Video_Event() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Video"); 36 | testMap.put("testChildCaseInit", "AG_Video_Video_Event"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Web_Web_Event.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Web_Web_Event extends TestFlow { 27 | public AG_Web_Web_Event() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Web"); 36 | testMap.put("testChildCaseInit", "AG_Web_Web_Event"); 37 | super.setTestMap(testMap); 38 | } 39 | 40 | @Test 41 | public void doTest(){ 42 | super.testByTestMap(); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AG/AG_Web_Web_Src.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.uitest.TC_AG; 20 | import org.apache.weex.WXPageActivity; 21 | import org.apache.weex.util.TestFlow; 22 | import java.util.TreeMap; 23 | import org.junit.Before; 24 | import org.junit.Test; 25 | 26 | public class AG_Web_Web_Src extends TestFlow { 27 | public AG_Web_Web_Src() { 28 | super(WXPageActivity.class); 29 | } 30 | 31 | @Before 32 | public void setUp() throws InterruptedException { 33 | super.setUp(); 34 | TreeMap testMap = new TreeMap(); 35 | testMap.put("testComponet", "AG_Web"); 36 | testMap.put("testChildCaseInit", "AG_Web_Web_Src"); 37 | testMap.put("step1",new TreeMap(){ 38 | { 39 | put("click", "src0"); 40 | put("screenshot", "AG_Web_Web_Src_01_src0"); 41 | } 42 | }); 43 | testMap.put("step2",new TreeMap(){ 44 | { 45 | put("click", "src1"); 46 | put("screenshot", "AG_Web_Web_Src_02_src1"); 47 | } 48 | }); 49 | super.setTestMap(testMap); 50 | } 51 | 52 | @Test 53 | public void doTest(){ 54 | super.testByTestMap(); 55 | } 56 | 57 | } 58 | -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Animation/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Animation/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AppendTree/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_AppendTree/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_BizComponet/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_BizComponet/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_BizModule/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_BizModule/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_DataBind/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_DataBind/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Gesture/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Gesture/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_List/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_List/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Monitor/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Monitor/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_PopBox/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_PopBox/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Scroller/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Scroller/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Select/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Select/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Style/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Style/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Switch/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Switch/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Video/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Video/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Web/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/androidTest/java/org/apache/weex/uitest/uitest/TC_Web/.gitignore -------------------------------------------------------------------------------- /android/playground/src/androidTest/java/org/apache/weex/util/SdCardHelper.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.util; 20 | 21 | import android.os.Environment; 22 | 23 | /** 24 | * Created by admin on 16/4/25. 25 | */ 26 | public class SdCardHelper { 27 | public static String SDCardRoot = Environment.getExternalStorageDirectory().getAbsolutePath() + "/"; 28 | 29 | /** 30 | * sdcard check 31 | * @return 32 | */ 33 | public static boolean isHasSdcard(){ 34 | String status = Environment.getExternalStorageState(); 35 | if (status.equals(Environment.MEDIA_MOUNTED)) { 36 | return true; 37 | } else { 38 | return false; 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /android/playground/src/main/assets/lite_template/card.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/main/assets/lite_template/card.wasm -------------------------------------------------------------------------------- /android/playground/src/main/assets/weex_config_search.json: -------------------------------------------------------------------------------- 1 | { 2 | "modules":[ 3 | { 4 | "name" : "tool", 5 | "className":"com.taobao.weex.ui.module.WXModalUIModule", 6 | "methods":[ 7 | "toast", 8 | "alert", 9 | "confirm", 10 | "prompt" 11 | ] 12 | }, 13 | { 14 | "name" : "toolError", 15 | "className":"com.taobao.weex.ui.module.WXModalUIModuleError", 16 | "methods":[ 17 | "toast", 18 | "alert" 19 | ] 20 | } 21 | ], 22 | "components":[ 23 | { 24 | "name":"diva", 25 | "className":"com.taobao.weex.ui.component.WXDiv", 26 | "appendTree":false, 27 | "methods":[] 28 | }, 29 | { 30 | "name":"divnot", 31 | "className":"com.taobao.weex.ui.component.WXDivNot", 32 | "appendTree":false, 33 | "methods":[] 34 | } 35 | ] 36 | } -------------------------------------------------------------------------------- /android/playground/src/main/ic_launcher-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/main/ic_launcher-web.png -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/WXBaseActivity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex; 20 | 21 | import android.os.Bundle; 22 | import android.os.PersistableBundle; 23 | import android.support.v7.app.AppCompatActivity; 24 | 25 | public abstract class WXBaseActivity extends AppCompatActivity { 26 | 27 | @Override 28 | public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState) { 29 | super.onCreate(savedInstanceState, persistentState); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/constants/Constants.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.constants; 20 | 21 | public class Constants { 22 | 23 | // public static final String BUNDLE_URL = "http://t.cn?_wx_tpl=http://h5.waptest.taobao.com/app/weextc031/build/TC__Home.js"; 24 | public static final String BUNDLE_URL = "http://h5.m.taobao.com?_wx_tpl=http://g.tbcdn.cn/weex/weex-tc/0.1.2/build/TC__Home.js"; 25 | public static final String WEEX_SAMPLES_KEY = "?weex-samples"; 26 | public static final String WEEX_TPL_KEY = "_wx_tpl"; 27 | 28 | 29 | //hot refresh 30 | public static final int HOT_REFRESH_CONNECT = 0x111; 31 | public static final int HOT_REFRESH_DISCONNECT = HOT_REFRESH_CONNECT + 1; 32 | public static final int HOT_REFRESH_REFRESH = HOT_REFRESH_DISCONNECT + 1; 33 | public static final int HOT_REFRESH_CONNECT_ERROR = HOT_REFRESH_REFRESH + 1; 34 | } 35 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/extend/adapter/ApmGenerator.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.extend.adapter; 20 | 21 | import com.taobao.weex.performance.IApmGenerator; 22 | import com.taobao.weex.performance.IWXApmMonitorAdapter; 23 | 24 | /** 25 | * @author zhongcang 26 | * @date 2018/7/13 27 | */ 28 | public class ApmGenerator implements IApmGenerator { 29 | @Override 30 | public IWXApmMonitorAdapter generateApmInstance(String type) { 31 | return new WXInstanceApmAdapter(); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/extend/adapter/DefaultConfigAdapter.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.extend.adapter; 20 | 21 | import com.taobao.weex.adapter.IWXConfigAdapter; 22 | 23 | /** 24 | * @author zhongcang 25 | * @date 2019/6/19 26 | */ 27 | public class DefaultConfigAdapter implements IWXConfigAdapter { 28 | @Override 29 | public String getConfig(String nameSpace, String key, String defaultValue) { 30 | return defaultValue; 31 | } 32 | 33 | @Override 34 | public String getConfigWhenInit(String nameSpace, String key, String defaultValue) { 35 | return defaultValue; 36 | } 37 | 38 | @Override 39 | public boolean checkMode(String name) { 40 | return false; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/extend/adapter/WXAnalyzerDemoListener.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.extend.adapter; 20 | 21 | import com.taobao.weex.BuildConfig; 22 | import com.taobao.weex.performance.IWXAnalyzer; 23 | 24 | /** 25 | * @author zhongcang 26 | * @date 2018/9/17 27 | */ 28 | public class WXAnalyzerDemoListener implements IWXAnalyzer { 29 | @Override 30 | public void transfer(String group, String module, String type, String data) { 31 | //WXAnalyzerDataTransfer.switchInteractionLog(true); 32 | if (BuildConfig.DEBUG){ 33 | // Log.d("WXAnalyzerDemoListener", "transfer: "); 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/extend/component/WXComponentSyncTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.extend.component; 20 | 21 | import com.taobao.weex.WXSDKInstance; 22 | import com.taobao.weex.annotation.JSMethod; 23 | import com.taobao.weex.ui.action.BasicComponentData; 24 | import com.taobao.weex.ui.component.WXDiv; 25 | import com.taobao.weex.ui.component.WXVContainer; 26 | import com.taobao.weex.utils.WXLogUtils; 27 | 28 | /** 29 | * Created by zhengshihan on 2016/12/30. 30 | */ 31 | 32 | public class WXComponentSyncTest extends WXDiv { 33 | 34 | public WXComponentSyncTest(WXSDKInstance instance, WXVContainer parent, BasicComponentData basicComponentData) { 35 | super(instance, parent, basicComponentData); 36 | } 37 | 38 | @JSMethod (uiThread = false) 39 | public void testSyncCall(){ 40 | WXLogUtils.d("11WXComponentSyncTest :"+ Thread.currentThread().getName()); 41 | } 42 | 43 | @JSMethod (uiThread = true) 44 | public void testAsyncCall(){ 45 | WXLogUtils.e("22WXComponentSynTest :"+ Thread.currentThread().getName() ); 46 | } 47 | } -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/extend/module/MyModule.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.extend.module; 20 | 21 | import android.widget.Toast; 22 | 23 | import com.taobao.weex.annotation.JSMethod; 24 | import com.taobao.weex.common.WXModule; 25 | 26 | public class MyModule extends WXModule { 27 | 28 | @JSMethod(uiThread = true) 29 | public void printLog(String msg) { 30 | Toast.makeText(mWXSDKInstance.getContext(),msg,Toast.LENGTH_SHORT).show(); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/extend/module/RenderModule.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.extend.module; 20 | 21 | import android.util.Log; 22 | 23 | import com.taobao.weex.annotation.JSMethod; 24 | import com.taobao.weex.common.WXModule; 25 | 26 | 27 | public class RenderModule extends WXModule { 28 | 29 | @JSMethod 30 | public void performClick() { 31 | Log.d("Render", "Render"); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/extend/module/location/LocationFactory.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.extend.module.location; 20 | 21 | import com.taobao.weex.WXSDKInstance; 22 | 23 | /** 24 | */ 25 | public class LocationFactory { 26 | 27 | public static ILocatable getLocationProvider(WXSDKInstance context){ 28 | return new DefaultLocation(context); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/extend/view/WXMaskView.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.extend.view; 20 | 21 | import android.content.Context; 22 | 23 | import com.taobao.weex.ui.view.WXFrameLayout; 24 | 25 | /** 26 | * Created by lixinke on 2016/12/26. 27 | */ 28 | 29 | public class WXMaskView extends WXFrameLayout { 30 | 31 | public WXMaskView(Context context) { 32 | super(context); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/https/WXHttpResponse.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.https; 20 | 21 | public class WXHttpResponse { 22 | 23 | public int code; 24 | public byte[] data; 25 | } 26 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/https/WXHttpTask.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.https; 20 | 21 | public class WXHttpTask { 22 | 23 | public String url; 24 | public WXRequestListener requestListener; 25 | public WXHttpResponse response; 26 | } 27 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/https/WXRequestListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.https; 20 | 21 | public interface WXRequestListener { 22 | 23 | void onSuccess(WXHttpTask task); 24 | 25 | void onError(WXHttpTask task); 26 | } 27 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/thirdParty/zxing/HistoryItem.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | package org.apache.weex.thirdParty.zxing; 20 | 21 | import com.google.zxing.Result; 22 | 23 | public final class HistoryItem { 24 | 25 | private final Result result; 26 | private final String display; 27 | private final String details; 28 | 29 | HistoryItem(Result result, String display, String details) { 30 | this.result = result; 31 | this.display = display; 32 | this.details = details; 33 | } 34 | 35 | public Result getResult() { 36 | return result; 37 | } 38 | 39 | public String getDisplayAndDetails() { 40 | StringBuilder displayResult = new StringBuilder(); 41 | if (display == null || display.isEmpty()) { 42 | displayResult.append(result.getText()); 43 | } else { 44 | displayResult.append(display); 45 | } 46 | if (details != null && !details.isEmpty()) { 47 | displayResult.append(" : ").append(details); 48 | } 49 | return displayResult.toString(); 50 | } 51 | 52 | } 53 | -------------------------------------------------------------------------------- /android/playground/src/main/java/org/apache/weex/util/CoverageDataDumper.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one 3 | * or more contributor license agreements. See the NOTICE file 4 | * distributed with this work for additional information 5 | * regarding copyright ownership. The ASF licenses this file 6 | * to you under the Apache License, Version 2.0 (the 7 | * "License"); you may not use this file except in compliance 8 | * with the License. You may obtain a copy of the License at 9 | * 10 | * http://www.apache.org/licenses/LICENSE-2.0 11 | * 12 | * Unless required by applicable law or agreed to in writing, 13 | * software distributed under the License is distributed on an 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 | * KIND, either express or implied. See the License for the 16 | * specific language governing permissions and limitations 17 | * under the License. 18 | */ 19 | 20 | package org.apache.weex.util; 21 | 22 | import android.content.BroadcastReceiver; 23 | import android.content.Context; 24 | import android.content.Intent; 25 | 26 | public class CoverageDataDumper extends BroadcastReceiver { 27 | @Override 28 | public void onReceive(Context context, Intent intent) { 29 | // JacocoCodeCoverage.dumpCodeCoverage(context); 30 | JacocoCodeCoverage.dumpCodeCoverageByJacoco(context); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-hdpi/ic_action_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/main/res/drawable-hdpi/ic_action_refresh.png -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-hdpi/ic_action_scan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/main/res/drawable-hdpi/ic_action_scan.png -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-mdpi/ic_action_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/main/res/drawable-mdpi/ic_action_refresh.png -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-mdpi/ic_action_scan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/main/res/drawable-mdpi/ic_action_scan.png -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-v21/ic_menu_camera.xml: -------------------------------------------------------------------------------- 1 | 19 | 24 | 27 | 30 | 31 | -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-v21/ic_menu_gallery.xml: -------------------------------------------------------------------------------- 1 | 19 | 24 | 27 | 28 | -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-v21/ic_menu_manage.xml: -------------------------------------------------------------------------------- 1 | 19 | 24 | 27 | -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-v21/ic_menu_send.xml: -------------------------------------------------------------------------------- 1 | 19 | 24 | 27 | 28 | -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-v21/ic_menu_share.xml: -------------------------------------------------------------------------------- 1 | 19 | 24 | 27 | 28 | -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-v21/ic_menu_slideshow.xml: -------------------------------------------------------------------------------- 1 | 19 | 24 | 27 | 28 | -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-xhdpi/ic_action_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/main/res/drawable-xhdpi/ic_action_refresh.png -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-xhdpi/ic_action_scan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/main/res/drawable-xhdpi/ic_action_scan.png -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-xxhdpi/ic_action_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/main/res/drawable-xxhdpi/ic_action_refresh.png -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable-xxhdpi/ic_action_scan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/incubator-weex-playground/58981c2a64577f15f2e5c1c994b1462f8cd727ff/android/playground/src/main/res/drawable-xxhdpi/ic_action_scan.png -------------------------------------------------------------------------------- /android/playground/src/main/res/drawable/side_nav_bar.xml: -------------------------------------------------------------------------------- 1 | 19 | 21 | 27 | -------------------------------------------------------------------------------- /android/playground/src/main/res/layout/activity_qrcode.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 17 | 18 | -------------------------------------------------------------------------------- /android/playground/src/main/res/layout/activity_slice_test.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 |