Skip to content

Commit a3b0225

Browse files
lucky-chenYorkShen
authored andcommitted
[WEEX-539][Android] report container info when report error or performance
* [Android] rm useless code
1 parent 040a57e commit a3b0225

File tree

5 files changed

+42
-15
lines changed

5 files changed

+42
-15
lines changed

android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,6 @@ public static void initialize(Application application,InitConfig config){
168168
registerApplicationOptions(application);
169169
WXEnvironment.sSDKInitInvokeTime = System.currentTimeMillis()-start;
170170
WXLogUtils.renderPerformanceLog("SDKInitInvokeTime", WXEnvironment.sSDKInitInvokeTime);
171-
WXPerformance.init();
172171
mIsInit = true;
173172
}
174173
}

android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
*/
1919
package com.taobao.weex;
2020

21+
import android.app.Activity;
2122
import android.app.AlertDialog;
2223
import android.content.Context;
2324
import android.content.Intent;
@@ -134,6 +135,8 @@ public class WXSDKInstance implements IWXActivityStateListener,View.OnLayoutChan
134135
private @NonNull
135136
FlatGUIContext mFlatGUIContext =new FlatGUIContext();
136137

138+
private Map<String,String> mContainerInfo;
139+
137140
/**
138141
* bundle type
139142
*/
@@ -385,15 +388,22 @@ public void removeOnInstanceVisibleListener(OnInstanceVisibleListener l){
385388

386389
public void init(Context context) {
387390
mContext = context;
391+
mContainerInfo = new HashMap<>(4);
388392
mNativeInvokeHelper = new NativeInvokeHelper(mInstanceId);
389393

390-
mWXPerformance = new WXPerformance();
394+
mWXPerformance = new WXPerformance(mInstanceId);
391395
mWXPerformance.WXSDKVersion = WXEnvironment.WXSDK_VERSION;
392396
mWXPerformance.JSLibInitTime = WXEnvironment.sJSLibInitTime;
393397

394398
mUserTrackAdapter=WXSDKManager.getInstance().getIWXUserTrackAdapter();
395399

396400
WXSDKManager.getInstance().getAllInstanceMap().put(mInstanceId,this);
401+
402+
mContainerInfo.put(Dimension.activity.toString(), context instanceof Activity
403+
? context.getClass().getSimpleName()
404+
:"unKnowContainer"
405+
);
406+
mContainerInfo.put(Dimension.instanceType.toString(),"page");
397407
}
398408

399409
/**
@@ -447,6 +457,14 @@ public WXScrollView.WXScrollViewListener getScrollViewListener() {
447457
public void setIWXUserTrackAdapter(IWXUserTrackAdapter adapter) {
448458
}
449459

460+
public void setContainerInfo(String key,String val){
461+
mContainerInfo.put(key,val);
462+
}
463+
464+
public Map<String, String> getContainerInfo() {
465+
return mContainerInfo;
466+
}
467+
450468
/**
451469
* Render template asynchronously, use {@link WXRenderStrategy#APPEND_ASYNC} as render strategy
452470
* @param template bundle js
@@ -928,6 +946,7 @@ public void onActivityPause() {
928946
mWXPerformance.maxDeepViewLayer=getMaxDeepLayer();
929947
mWXPerformance.wxDims = mwxDims;
930948
mWXPerformance.measureTimes = measureTimes;
949+
WXExceptionUtils.commitCriticalExceptionRT(mInstanceId,WXErrorCode.WX_ERR_BAD_SO,"TEST","ss",null);
931950
if (mUserTrackAdapter != null) {
932951
mUserTrackAdapter.commit(mContext, null, IWXUserTrackAdapter.LOAD, mWXPerformance, getUserTrackParams());
933952
}
@@ -1163,7 +1182,7 @@ public void run() {
11631182
if (mRenderListener != null && mContext != null) {
11641183
mRenderListener.onRenderSuccess(WXSDKInstance.this, width, height);
11651184
if (mUserTrackAdapter != null) {
1166-
WXPerformance performance=new WXPerformance();
1185+
WXPerformance performance=new WXPerformance(mInstanceId);
11671186
performance.errCode=WXErrorCode.WX_SUCCESS.getErrorCode();
11681187
performance.args=getBundleUrl();
11691188
mUserTrackAdapter.commit(mContext,null,IWXUserTrackAdapter.JS_BRIDGE,performance,getUserTrackParams());
@@ -1837,7 +1856,7 @@ public void onHttpFinish(WXResponse response) {
18371856
mWXPerformance.zCacheInfo = zCacheInfo instanceof String?(String)zCacheInfo:"";
18381857

18391858
if(isNet(mWXPerformance.requestType) && mUserTrackAdapter!=null){
1840-
WXPerformance performance=new WXPerformance();
1859+
WXPerformance performance=new WXPerformance(mInstanceId);
18411860
if(!TextUtils.isEmpty(mBundleUrl)){
18421861
try {
18431862
performance.args= Uri.parse(mBundleUrl).buildUpon().clearQuery().toString();

android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
import android.support.annotation.RestrictTo;
2222

2323
import com.taobao.weex.WXEnvironment;
24+
import com.taobao.weex.WXSDKInstance;
25+
import com.taobao.weex.WXSDKManager;
2426
import com.taobao.weex.utils.WXViewUtils;
2527

2628
import java.util.HashMap;
@@ -42,6 +44,8 @@ public enum Dimension {
4244
networkType,
4345
connectionType,
4446
zcacheInfo,
47+
activity,
48+
instanceType,
4549
wxdim1,
4650
wxdim2,
4751
wxdim3,
@@ -363,11 +367,11 @@ public double getMaxRange() {
363367
public int mActionAddElementCount = 0;
364368
public int mActionAddElementSumTime = 0;
365369

366-
public WXPerformance(){
367-
mErrMsgBuilder=new StringBuilder();
368-
}
370+
private String mInstanceId;
369371

370-
public static void init() {
372+
public WXPerformance(String instanceId){
373+
mErrMsgBuilder=new StringBuilder();
374+
mInstanceId = instanceId;
371375
}
372376

373377
public Map<String, Double> getMeasureMap() {
@@ -455,6 +459,12 @@ public Map<String, String> getDimensionMap() {
455459
quotas.put(Dimension.cacheType.toString(), cacheType);
456460
quotas.put(Dimension.useScroller.toString(), String.valueOf(useScroller));
457461

462+
WXSDKInstance sdkInstance = WXSDKManager.getInstance().getSDKInstance(mInstanceId);
463+
String keyActivity = Dimension.activity.toString();
464+
quotas.put(keyActivity, null == sdkInstance? "unKnow" : sdkInstance.getContainerInfo().get(keyActivity));
465+
String keyType = Dimension.instanceType.toString();
466+
quotas.put(keyType,sdkInstance == null ?"unKnow": sdkInstance.getContainerInfo().get(keyType));
467+
458468
// TODO These attribute will be moved to elsewhere
459469
// Extra Dimension for 3rd developers.
460470
quotas.put(Dimension.wxdim1.toString(), wxDims[0]);

android/sdk/src/main/java/com/taobao/weex/ui/component/WXEmbed.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
import com.taobao.weex.common.Constants;
3636
import com.taobao.weex.common.WXErrorCode;
3737
import com.taobao.weex.common.WXPerformance;
38+
import com.taobao.weex.common.WXPerformance.Dimension;
3839
import com.taobao.weex.common.WXRenderStrategy;
3940
import com.taobao.weex.ui.action.BasicComponentData;
4041
import com.taobao.weex.utils.WXLogUtils;
@@ -288,6 +289,8 @@ public void setPriority(String priority) {
288289
*/
289290
protected void loadContent(){
290291
mNestedInstance = createInstance();
292+
mNestedInstance.setContainerInfo(Dimension.instanceType.toString(),"embed");
293+
mNestedInstance.setContainerInfo("parentPage",getInstance().getBundleUrl());
291294
if(mListener != null && mListener.mEventListener != null){
292295
if(!mListener.mEventListener.onPreCreate(this,src)){
293296
//cancel render

android/sdk/src/main/java/com/taobao/weex/utils/WXExceptionUtils.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -77,13 +77,6 @@ public static void commitCriticalExceptionRT(@Nullable final String instanceId,
7777
instanceIdCommit = instanceId;
7878
instance = WXSDKManager.getInstance().getAllInstanceMap().get(instanceId);
7979

80-
if (null != instance && instance.getContainerView() != null){
81-
Context c = instance.getContainerView().getContext();
82-
if (c instanceof Activity){
83-
commitMap.put("activity",c.getClass().getSimpleName());
84-
}
85-
}
86-
8780
if (null != instance) {
8881
bundleUrlCommit = instance.getBundleUrl();
8982
commitMap.put("templateInfo",instance.getTemplateInfo());
@@ -93,6 +86,9 @@ public static void commitCriticalExceptionRT(@Nullable final String instanceId,
9386
} else
9487
bundleUrlCommit = WXSDKInstance.requestUrl;
9588
}
89+
for (Map.Entry<String,String> entry: instance.getContainerInfo().entrySet()){
90+
commitMap.put(entry.getKey(),entry.getValue());
91+
}
9692
}
9793
} else {//instance is null for instance id is null
9894
if (!TextUtils.isEmpty(WXSDKInstance.requestUrl)) {

0 commit comments

Comments
 (0)