优化 opencv内存泄漏问题

This commit is contained in:
hyb1996
2018-10-24 20:39:51 +08:00
parent dbcb0257a2
commit 8864e78af6
14 changed files with 304 additions and 27 deletions

View File

@@ -2,6 +2,7 @@
var url = "https://www.autojs.org/assets/uploads/profile/3-profileavatar.png";
var logo = null;
var currentImg = null;
ui.layout(
<vertical>
@@ -18,7 +19,14 @@ ui.layout(
//把一张图片设置到图片控件中
function setImage(img) {
ui.run(() => {
var curImg = currentImg;
if(oldImg != null){
ui.post(()=>{
oldImg.recycle();
});
}
ui.img.setImageBitmap(img.bitmap);
currentImg = img;
});
}
@@ -63,20 +71,20 @@ ui.hsv.on("click", () => {
ui.blur.on("click", () => {
processImg(img => {
//RGB转HSV
//模糊
return images.blur(img, [10, 10]);
});
});
ui.medianBlur.on("click", () => {
processImg(img => {
//RGB转HSV
return images.medianBlur(img, 10);
//中值滤波
return images.medianBlur(img, 5);
});
});
ui.gaussianBlur.on("click", () => {
processImg(img => {
//RGB转HSV
//高斯模糊
return images.gaussianBlur(img, [5, 5]);
});
});

View File

@@ -14,7 +14,6 @@ import com.bumptech.glide.request.transition.Transition;
import com.flurry.android.FlurryAgent;
import com.squareup.leakcanary.LeakCanary;
import com.stardust.app.GlobalAppContext;
import com.stardust.autojs.core.image.OpenCVHelper;
import com.stardust.autojs.core.ui.inflater.ImageLoader;
import com.stardust.autojs.core.ui.inflater.util.Drawables;
import com.stardust.theme.ThemeColor;
@@ -31,8 +30,6 @@ import org.autojs.autojs.timing.TimedTaskManager;
import org.autojs.autojs.timing.TimedTaskScheduler;
import org.autojs.autojs.tool.CrashHandler;
import org.autojs.autojs.ui.error.ErrorReportActivity;
import org.opencv.android.BaseLoaderCallback;
import org.opencv.android.OpenCVLoader;
import java.lang.ref.WeakReference;
import java.util.ArrayList;

View File

@@ -45,8 +45,7 @@ import static org.autojs.autojs.ui.edit.EditorView.EXTRA_READ_ONLY;
* Created by Stardust on 2017/1/29.
*/
@EActivity(R.layout.activity_edit)
public class
EditActivity extends BaseActivity implements OnActivityResultDelegate.DelegateHost, PermissionRequestProxyActivity {
public class EditActivity extends BaseActivity implements OnActivityResultDelegate.DelegateHost, PermissionRequestProxyActivity {
private OnActivityResultDelegate.Mediator mMediator = new OnActivityResultDelegate.Mediator();
private static final String LOG_TAG = "EditActivity";

View File

@@ -9,7 +9,7 @@ import android.support.annotation.Nullable;
import android.util.Log;
import android.view.View;
import com.stardust.autojs.core.image.OpenCVHelper;
import com.stardust.autojs.core.opencv.OpenCVHelper;
import com.xcy8.ads.listener.LoadAdListener;
import com.xcy8.ads.view.FullScreenAdView;