自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(207)
  • 资源 (2)
  • 收藏
  • 关注

原创 android编译排查指南

【代码】android编译排查指南。

2023-04-28 10:52:25 120 1

原创 iOS获取当前项目的所有类

获取当前工程下自己创建的所有类(不包含系统类,CocosPods类)获取当前工程下的所有类(包含系统类,CocosPods类)

2023-03-21 10:27:29 398

原创 noVNC安装与使用

noVNC参考资料

2023-02-24 15:35:27 283

原创 SmartChat技术服务支持

ChatGPT是一项革命性的技术,本应用利用该先进的人工智能技术为用户进行聊天和创作,帮助用户轻松愉快的解决生活或者工作中的问题,为用户带来全新不一样的人工智能体验

2023-02-10 18:39:45 2787 2

原创 Manifest merger failed with multiple errors, see logs问题解决

今天在接入一个Android SDK的时候,报了一个Manifest merger failed with multiple errors, see logs问题,google了一下,这个问题在引入第三方SDK的时候经常会出现,其实就是依赖冲突。在错误的上面即可看到具体的错误信息,如下所示说明是com.tencent.mid冲突了,exclude即可...

2021-11-04 20:58:58 1457

原创 获取Cocos图片

最近在做录制回放的项目,录制回放中的校验是可以通过图片比对进行校验,所以需要获取Cocos中的图片完成接入和适配。参考了网上大多数文章,主要是通过截图方案实现的,代码如下所示:var canvas = document.createElement("canvas");var ctx = canvas.getContext('2d');var img = new Image;img.crossOrigin = 'Anonymous';img.src = url;canvas.height = im

2021-11-01 15:03:53 400

原创 IOS工程Flutter白屏

今天编译IOS工程的时候,Flutter页面白屏,经过多方定位无果,在启动日志里面看到Can’t load Kernel binary: Invalid kernel binary format version.如下错误,通过文章Can’t load Kernel binary: Invalid kernel binary format version.解决重新配置Flutter环境即可参考文章1、https://flutter.dev/docs/development/tools/sdk/rel

2021-09-30 11:02:08 612

原创 Flutter集成到ios项目中

现在Flutter项目集成到IOS项目中,有两种方式,一种是通过frameworkrk,另一种是通过cocospod后续完善参考文章https://flutter.cn/docs/development/add-to-app/ios/project-setup

2021-09-29 10:08:22 119

原创 Flutter事件分发和坐标获取

Flutter事件分发可以使用RendererBinding.instance.hitTest(hitTestResult, position);,获取整个响应的控件列表,根据文章Flutter完整开发实战详解(十三、全面深入触摸和滑动原理),在这个控件列表里,最底下的 Child 在最上面。hitTest 方法主要为了得到一个 HitTestResult ,这个 HitTestResult 内有一个 List 是用于分发和竞争事件的,而每个 HitTestEntry.target 都会存储每个控件的 R

2021-09-21 21:39:09 377

原创 Dart中的异步支持

与 JavaScript 一样, Dart 是基于 事件循环机制 的 单线程模型, 所以 Dart 中没有多线程, 也就没有主线程与子线程之分.后续补充参考文章:1、https://www.jianshu.com/p/cfcc6a0dac6a2、https://fullstackaction.com/pages/0fcdc8/#_1%E3%80%81%E5%90%8C%E6%AD%A5%E4%B8%8E%E5%BC%82%E6%AD%A5...

2021-09-21 09:09:20 94

原创 Cocoapods打包SDK

工程代码改造成CocosPod以后,以前在源代码工程中将代码打成SDK的脚本已经不能适用了,现在需要基于CocosPod打包成SDK输出给其他人。Cocoapods实现私有库开发和二进制发布原来CocosPod工程pod下来的源码是可以直接通过脚本进行编译核心编译SDK语句如下xcodebuild -project ${PROJECT} -target "${TARGET}" ONLY_ACTIVE_ARCH=NO -configuration ${CONFIGURATION} -sdk iphon

2021-07-07 17:52:37 182

原创 Android ADB常用命令

1、获取包名和Activity名字adb shell dumpsys window windows | grep mCurrentFocus也可以使用adb shell dumpsys activity top | grep ACTIVITY

2020-12-18 17:16:43 152 1

原创 IOS 13之后适配自定义window显示

今天在接入一个业务的时候,发现自定义的window不显示了,主要是因为ios13以后苹果增加了SceneDelegate进行管理窗口。以前的时候如果想要显示一个window,使用如下代码就行了window = [[NewMonkeyWindow alloc] initWithFrame:CGRectMake(0, 0, windowWidth, windowWidth)];window.hidden = false但是现在因为使用SceneDelegate管理window,必须将window注册到

2020-12-09 17:34:48 1043

原创 Genymotion Android 模拟器运行arm程序

最近在搞SDK自动化,交付过来的自动化只支持arm架构,Android自动的x86模拟器无法使用,使用Android自带的arm模拟器启动发现很慢,无法使用。只能使用第三方模拟器,搜索发现Genymotion是比较好用的一款模拟器。1、下载Genymotion模拟器首先是下载Genymotion模拟器,直接去官网根据自己的操作系统下载即可,https://www.genymotion.com/,下载安装后,如下图所示:2、安装Genymotion-ARM-TranslationGenymotion

2020-09-23 17:17:26 3073

原创 Android中获取指定包名下的所有类

准备开发一个测试框架,其中有一个问题是加载所有测试用例,需要利用java的反射机制加载继承了某个接口的测试用例,网上找了一圈,发现dexfile可以使用,代码如下所示 public static List<String > getAllClassName(){ List<String >classNameList=new ArrayList<String >(); try { DexFile df = new

2020-09-13 23:04:35 2115

原创 The style on this component requires your app theme to be Theme解决

今天要在Android端实现一个Navigation导航栏,代码需要通过LayoutInflater.from对BottomNavigationView进行初始化,但是总是报下面的错误,看了一下错误堆栈报了The style on this component requires your app theme to be Theme.AppCompat (or a descendant)这个错误 ┌─────────────────────────────────────────────────────

2020-08-17 21:13:33 1018

原创 Xcode输出: Message from debugger: Terminated due to signal 9

参考文章:1、https://my.oschina.net/u/2470593/blog/709608

2020-08-10 11:02:30 2061

原创 Android Studio引入Kotlin插件

Kotlin问世于2011年,直到近两年被JetBrains,Google等公司扶持下,才被逐渐重视起来。尤其是2017年5月份谷歌宣布把Kotlin作为Android的官方开发语言,紧接着10月份Android Studio3.0正式集成了Kotlin开发环境,11月份更完善的Kotlin1.2版正式发布。本文将介绍如何在Android Studio引入Kotlin。一、查看Kotlin版本打开Android Studio,选择 Android Studio ->Preferences->

2020-08-04 11:26:04 2996

原创 Android Studio开发SDK

Android Studio开发SDK过程很简单。File->New->NewModel,选择Android Library 就可以了参考文章1、https://blog.csdn.net/yushuangping/article/details/802504492、https://www.jianshu.com/p/c203f6afc06a

2020-07-31 11:36:03 196

原创 Android Studio报Could not GET xxx解决办法

今天在打开一个Android项目以后,sync gradle的过程中总是报Could not Get ‘https://mirrors.tencent.com/repository/maven/thirdparty-snapshots/com/android/tools/build/gradle/3.5.0/gradle-3.5.0.pom’ Enable Gradle ‘offline mode’ and sync projecturl打开这个链接https://mirrors.tencent.co

2020-07-21 14:37:29 2947

原创 ios xcode11单元测试实践

最近在做iOS的变异测试,有一部分是需要根据覆盖率精准推荐单测用例,其中设计到ios的单测,今天我们就聊聊 iOS的单测1、查看xcodebuild命令man xcodebuild即可查看xcodebuild所支持的选项2、xcodebuild完整的单元测试命令xcodebuild test -workspace 'xxx.xcworkspace' -scheme xxx -destination 'platform=iOS simulator,id=82D4328F-F862-4BC5-A3B2-

2020-06-14 21:46:15 1027

原创 go单元测试实践

最近在做go的单元测试,简单的梳理一下知识点1、框架选型goconvey+gomonkey应该是最好的组合方案,goconvey是作为外层框架,gomonkey可以为函数、方法等进行打桩。2、go monkey项目地址:https://github.com/agiledragon/gomonkeygomonkey 是 golang 的一款打桩框架,目标是让用户在单元测试中低成本的完成打桩,从而将精力聚焦于业务功能的开发。gomonkey 接口友好,功能强大,目前已被很多项目使用,用户遍及世界多个国

2020-06-02 20:17:01 890

原创 iOS LLDB调试

调试是开发程序的利器,在开发的过程中,掌握好的调试方法可以节省大量的时间,本文简单介绍一下iOS的LLDB调试expression命令在程序的运行过程中想要改变某个变量的值来改变程序的行为,express命令再适合不过了如上图所示,number本身传入的是11 ,但是通过expression命令expression number = 9将number赋值为9,达到改变程序的目的run命令调试的时候经常需要重新启动程序。但是如果重新Run程序,需要重新编译,非常浪费时间。可以在 lldb 中输入r

2020-05-27 19:46:35 249

原创 ios arm64汇编调试

最近在看 ios 的 inline hook,免不了需要了解一下 arm64 汇编的知识,以及如何通过xcode去查看和调试汇编代码。1、如果通过XCode查看汇编代码在调用处添加断点,然后依次选择Xcode菜单中的 Debug->Debug Workflow->Always Show Disassembly命令后,就直接以汇编代码呈现了:2、如何通过Xcode查看核心寄存器变...

2020-04-29 17:21:00 952

原创 IOS出现Initializer element is not a compile-time constant 解决办法

今天在写hook代码的时候,出现了Initializer element is not a compile-time constant 这个错误,如下图所示:通过将 该文件的后缀 .m 改成 .mm 即可

2020-03-14 22:41:13 3158

原创 VNCoreMLModel 初始化报 [NSURL initFileURLWithPath:]: nil string parameter

参考这篇文章 http://www.demodashi.com/demo/11715.html主要是因为 VNCoreMLModel init 的时候 model文件没有找到,如下代码所示: MyCustomImageClassifier *model = [[MyCustomImageClassifier alloc] init] ; _coreMLModel = [VNCo...

2020-02-18 16:38:17 653

原创 WKWebView捕获JS Error 跨域解决

通过window.onerror捕获到js error以后,发现js error都是Script error,毫无参考价值,webkit源码查看可知,script资源加载的地方,是进行了同源策略判断的,如果是非同源资源,errorMessage就被写死了Script errorFile跨域漏洞UIWebView虽然已经被遗弃,但依然还有很多app继续使用,且最新版本的iOS也会兼容UIWeb...

2020-02-11 19:27:41 2932

原创 WKWebView捕获JS Error

WebView里面会经常发生JSError,但是很多开发者却并未考虑过收集 JavaScript 出错时抛出的异常信息。因为只要 JavaScript 异常后 App 不会崩溃,当没有发生过就好了。或许,在浏览器时代,让用户刷新下页面,可以解决异常问题。但是在移动 App 的 H5 页面,一但出现异常将导致程序无法正常运行,用户也不是那么容易可以通过刷新来解决问题的。try-catch 主动...

2020-02-11 11:26:02 2772

原创 IOS图片分类

这篇文章是翻译官方IOS TuriCreate的图片分类器的使用原文链接:图片分类图片分类图片分类器的目标是在给定目标图片的情况下,能识别出该图片的标签。深度学习最近被证明可以在这个具有挑战性的问题上获得令人难以置信的结果。然而,这个结果是以不断对模型进行调參和训练为代价的。这意味着一个人可能需要花费数月的时间来测试不同配置的模型,但时间太长的情况下,投入产出比就很低。但是,Turi Cre...

2020-02-05 19:33:56 691

原创 图片分类器是如何工作的?

这篇文章是翻译官方IOS TuriCreate的图片分类器的使用。原文链接:图片分类器如何工作的?图片分类器是如何工作的?深度学习是在机器学习世界中随处可见的一个短语。它似乎正在帮助我们取得巨大的突破,但深度学习是什么呢?它是一种具有多层非线性转换的模型,频繁的通过该模型学习数据的高层表达的一种方法。让我们花点时间分析一下最后一句话。学习数据的高层表达意味着深度学习模型将获取数据,例如图片的...

2020-02-05 19:33:23 874

原创 图片分类器部署到Core ML

这篇文章是翻译官方IOS TuriCreate的图片分类器的使用。原文链接:部署到Core ML部署到Core ML借助Core ML框架,您可以使用机器学习模型对输入数据进行分类。 可以使用export_coreml函数导出Core ML格式的模型。model.export_coreml('MyCatDogClassifier.mlmodel')在Xcode中打开模型时,其外观如下所...

2020-02-05 18:30:57 490

原创 高级使用(图片分类)

这篇文章是翻译官方IOS TuriCreate的图片分类器的使用。原文链接:高级使用高级使用在本节中,我们将介绍图片分类器工具包中的一些高级选项,这些将使你可以执行更多操作。标注数据如果只有图片而没有相应的标签,你可以使用内置在image_classifier中的标注工具。其用法如下所示:import turicreate as tc# Use the example provid...

2020-02-05 16:18:16 459

原创 再谈IOS堆栈和还原

1、符号表是什么符号表就是指在Xcode项目编译后,在编译生成的二进制文件.app的同级目录下生成的同名的.dSYM文件。.dSYM文件其实是一个目录,在子目录中包含了一个16进制的保存函数地址映射信息的中转文件,所有Debug的symbols都在这个文件中(包括文件名、函数名、行号等),所以也称之为调试符号信息文件。一般地,Xcode项目每次编译后,都会生成一个新的.dSYM文件。因此,A...

2020-02-03 13:40:29 1923

原创 在Facebook iOS app中减少FOOMs

最近在看FOOM,翻译一下facebook的解决方案。原文链接在Facebook iOS app中减少FOOMs在Facebook iOS app中减少FOOMs在Facebook,我们致力于使我们的应用程序稳定、快速和可靠。我们一直在努力减少Facebook IOS应用中的崩溃次数,并提高其整体的可靠性。过去,大多数crash是由于程序错误引起的,并且它们总是带有可以定位错误的堆栈和一直...

2020-01-26 21:58:52 475

原创 UIAlertController和UIActivityViewController在ipad中的兼容性问题

今天业务侧说是让sdk在ipad中也可以运行。但是会必先crash。经过定位发现是因为UIAlertController和UIActivityViewController在ipad上存在兼容性。UIAlertController报的错误如下所示:Terminating app due to uncaught exception 'NSGenericException', reason: 'Yo...

2020-01-17 16:30:22 1558

原创 目标检测工作原理(翻译)

原文链接:目标检测工作原理目标检测工作原理长期以来,目标检测模型使用分离的机制进行定位(where)和分类(what)。这些模型称为两阶段检测器,效果也非常不错。但是,最近的工作已经将这两个步骤组合为一个深度学习模型,使模型成为了一个一阶段检测器。“You Only Look Once: Unified, Real-Time Object Detection” by Joseph Redm...

2020-01-12 16:55:46 717

原创 部署到Core ML(翻译)

原文链接:部署到Core ML部署到CoreML在Turi Create中创建的目标检测模型可以很容易的部署到Core ML在iOS12 和 macOS10.14(Turi Create 5)中部署模型使用Turi Create 5.0+ 、iOS12 和macOS10.14,你可以通过Vision Framework直接集成目标检测模型。你可以直接在Turi Create5中导出到Co...

2020-01-12 15:17:27 620

原创 高级使用(翻译)

原文链接:高级使用高级使用本小节会更详细的描述评估指标,以及如何使用Core ML将模型部署到iOS或macOS应用程序中。评估如果在创建模型之前保留了标注的数据,你可以使用它来定量评估模型。你可以通过拆分数据来执行评估。import turicreate as tctrain, val = data.random_split(0.8)model = tc.object_detec...

2020-01-12 11:37:19 305

原创 IG02数据准备(翻译)

原文链接:IG02数据准备在本节中,我们将向你展示如何下载公共可用的数据集并将其加载到SFrame中。这将使你可以自己尝试对象检测工具箱。为了使该数据集成为我们工具箱期望的输入格式,我们将依赖许多有用的SFrame函数。注意:请确保在Turi Create4.3或更高版本执行这些操作。我们将使用的数据集是INRIA Annotations for Graz-02 (IG02)[1][2]。我...

2020-01-11 21:58:21 319

原创 IOS目标检测(翻译)

原文链接:目标检测目标检测目标检测是在图片中对目标进行分类和定位。给定一幅图片,检测器会对目标进行预测,如下图所示:该模型是用来检测动物面部。并通过圈在目标周围的边界框对目标进行注释入门实例在该例子中,目标是预测图片中的汽车和自行车以及它们在图片中的位置(可以跳转到 数据准备 来了解怎么获取 ig02.sframe)import turicreate as tc# Load th...

2020-01-11 20:54:24 465

java 7并发编程实战手册 源码

java 7并发编程实战手册源码打包,可以运行,使用JDK1.7

2015-10-08

火车票查询系统

解压即可运行 火车票管理系统 数据库是Access

2012-12-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除