Merge branch 'dev' of gitlab.ghzs.com:halo/assistant-android into dev
This commit is contained in:
@ -1,160 +0,0 @@
|
||||
package com.halo.assistant;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import com.github.moduth.blockcanary.BlockCanaryContext;
|
||||
import com.github.moduth.blockcanary.internal.BlockInfo;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
public class AppBlockCanaryContext extends BlockCanaryContext {
|
||||
// 实现各种上下文,包括应用标示符,用户uid,网络类型,卡慢判断阙值,Log保存位置等
|
||||
|
||||
/**
|
||||
* Implement in your project.
|
||||
*
|
||||
* @return Qualifier which can specify this installation, like version + flavor.
|
||||
*/
|
||||
public String provideQualifier() {
|
||||
return "unknown";
|
||||
}
|
||||
|
||||
/**
|
||||
* Implement in your project.
|
||||
*
|
||||
* @return user id
|
||||
*/
|
||||
public String provideUid() {
|
||||
return "uid";
|
||||
}
|
||||
|
||||
/**
|
||||
* Network type
|
||||
*
|
||||
* @return {@link String} like 2G, 3G, 4G, wifi, etc.
|
||||
*/
|
||||
public String provideNetworkType() {
|
||||
return "unknown";
|
||||
}
|
||||
|
||||
/**
|
||||
* Config monitor duration, after this time BlockCanary will stop, use
|
||||
* with {@code BlockCanary}'s isMonitorDurationEnd
|
||||
*
|
||||
* @return monitor last duration (in hour)
|
||||
*/
|
||||
public int provideMonitorDuration() {
|
||||
return -1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Config block threshold (in millis), dispatch over this duration is regarded as a BLOCK. You may set it
|
||||
* from performance of device.
|
||||
*
|
||||
* @return threshold in mills
|
||||
*/
|
||||
public int provideBlockThreshold() {
|
||||
return 1000;
|
||||
}
|
||||
|
||||
/**
|
||||
* Thread stack dump interval, use when block happens, BlockCanary will dump on main thread
|
||||
* stack according to current sample cycle.
|
||||
* <p>
|
||||
* Because the implementation mechanism of Looper, real dump interval would be longer than
|
||||
* the period specified here (especially when cpu is busier).
|
||||
* </p>
|
||||
*
|
||||
* @return dump interval (in millis)
|
||||
*/
|
||||
public int provideDumpInterval() {
|
||||
return provideBlockThreshold();
|
||||
}
|
||||
|
||||
/**
|
||||
* Path to save log, like "/blockcanary/", will save to sdcard if can.
|
||||
*
|
||||
* @return path of log files
|
||||
*/
|
||||
public String providePath() {
|
||||
return "/blockcanary/";
|
||||
}
|
||||
|
||||
/**
|
||||
* If need notification to notice block.
|
||||
*
|
||||
* @return true if need, else if not need.
|
||||
*/
|
||||
public boolean displayNotification() {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Implement in your project, bundle files into a zip file.
|
||||
*
|
||||
* @param src files before compress
|
||||
* @param dest files compressed
|
||||
* @return true if compression is successful
|
||||
*/
|
||||
public boolean zip(File[] src, File dest) {
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Implement in your project, bundled log files.
|
||||
*
|
||||
* @param zippedFile zipped file
|
||||
*/
|
||||
public void upload(File zippedFile) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Packages that developer concern, by default it uses process name,
|
||||
* put high priority one in pre-order.
|
||||
*
|
||||
* @return null if simply concern only package with process name.
|
||||
*/
|
||||
public List<String> concernPackages() {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Filter stack without any in concern package, used with @{code concernPackages}.
|
||||
*
|
||||
* @return true if filter, false it not.
|
||||
*/
|
||||
public boolean filterNonConcernStack() {
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Provide white list, entry in white list will not be shown in ui list.
|
||||
*
|
||||
* @return return null if you don't need white-list filter.
|
||||
*/
|
||||
public List<String> provideWhiteList() {
|
||||
LinkedList<String> whiteList = new LinkedList<>();
|
||||
whiteList.add("org.chromium");
|
||||
return whiteList;
|
||||
}
|
||||
|
||||
/**
|
||||
* Whether to delete files whose stack is in white list, used with white-list.
|
||||
*
|
||||
* @return true if delete, false it not.
|
||||
*/
|
||||
public boolean deleteFilesInWhiteList() {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Block interceptor, developer may provide their own actions.
|
||||
*/
|
||||
public void onBlock(Context context, BlockInfo blockInfo) {
|
||||
|
||||
}
|
||||
}
|
||||
@ -39,7 +39,6 @@ import com.gh.gamecenter.receiver.NetworkStateReceiver;
|
||||
import com.gh.gamecenter.receiver.UmengMessageReceiver;
|
||||
import com.gh.gamecenter.user.UserRepository;
|
||||
import com.gh.gid.GidHelper;
|
||||
import com.github.moduth.blockcanary.BlockCanary;
|
||||
import com.github.piasy.biv.BigImageViewer;
|
||||
import com.github.piasy.biv.loader.fresco.FrescoImageLoader;
|
||||
import com.ledong.lib.leto.Leto;
|
||||
@ -189,7 +188,6 @@ public class HaloApp extends TinkerAppLike {
|
||||
Picasso.with(getApplication()).load(Uri.parse(barData.getIconUnselect())).fetch();
|
||||
}
|
||||
});
|
||||
BlockCanary.install(getApplication(), new AppBlockCanaryContext()).start();
|
||||
PlayerFactory.setPlayManager(Exo2PlayerManager.class);
|
||||
CacheFactory.setCacheManager(ExoPlayerCacheManager.class);
|
||||
//CacheFactory.setCacheManager(CustomProxyCacheManager.class);
|
||||
|
||||
Reference in New Issue
Block a user