barriers / 阅读 / 详情

unity iap 可以直接在unity调试吗

2023-07-19 22:26:13
TAG: unit it iap ia ni nit
共1条回复
南yi

不能直接在Unity中调试,因为最终调试环节必须是需要靠真机的。

所以建议在模拟器中调试无误后,在进行真机调试

相关推荐

php代码混淆_obfuscate怎么还原

这代码也没啥区别呀,不是一样看得懂吗?这有什么问题吗??在我看来感觉还是一样的,只是变量名乱了些长了些而已, 你将相关变量名对应重新命一下名不就全出来了吗??
2023-07-19 18:10:391

php正则表达式过滤某些HTML标签代码

php 有自带函数strip_tags
2023-07-19 18:11:075

这个PHP的加密代码怎样破解,这个是什么原码来的?

最好把原网页地址发过来,这样容易看出加密方法
2023-07-19 18:12:113

php文件被加密怎么破解

可以用黑刀Dezender来试试,我不担保可以解出来的哦,从黑刀Dezender4.3版之后,将着力对混淆函数以及自定义函数的解密进行应对。大家下载压缩包并解压后,会发现有一个“config.ini”的文件,这就是混淆函数库啦!打开后,可自行编辑其中的内容,当然,也可以通过黑刀Dezender的升级程序直接下载官方最新的混淆函数库文件。这个混淆函数库就相当于是一个字典文件了,在保证格式不变的情况下,大家可以在【黑刀部落】下载《黑刀超级字典生成器》生成字典来挂入主程序进行解密,正确步骤为:先备份、改名自己的config.ini文件,生成的字典文件在第一行加入“[OBFUSCATE_NAME]”,将字典文件改名为config.ini,开始解密。同时,黑刀部落网站的“项目中心”栏目也开设了用户提交自己已知程序被混淆的函数列表,这样的话,就能让Dezender变得越来越强了。再也不怕混淆函数了。呵呵。什么是混淆函数?混淆函数,是从Zend Guard 4.0之后新增的一项功能,能把PHP文件中的所有函数名都进行混淆,混淆后变成以“_OBFUSCATE_”开头的一串“乱码”,这种加密方式感觉有点类似Md5,因为函数名已经不是原来的样子了,所以解密出来的PHP文件是不能正常执行的。黑刀Dezender在4.3版之后,新增加了挂入混淆函数库参与解密的功能,而混淆函数库,就像是一个包含了已知函数名的字典,利用这个字典,来与被混淆了的函数名(就是所谓的“乱码”)进行比对,如果比对结果相同,则解密出来的文件,基本上就可以恢复到加密前的样子了。如果混淆函数库中没有包含该PHP文件中使用的函数名,那么解密结果依然还是会存在“乱码”的。掌握了这个原理,我们就可以去想办法解决问题了。方式有以下几种:第一,使用黑刀超级字典生成器产生一个字典,字典的内容可以自己把握,修改字典文件名为“config.ini”,然后打开字典文件,在第一行插入“[OBFUSCATE_NAME]”标记(注意,方括号也是需要的,也就是引号内的内容都要加进去),将字典文件拷贝入黑刀Dezender主程序所在目录,同时注意备份原有的config.ini文件。这种办法费时费力,也要看运气,不过却是最实际的解决办法。第二,常看别人源代码的朋友,可以把自己已经掌握了的混淆函数的真实函数名提交到我的网站上来。操作步骤:进入网站首页,进入项目中心的“DeZender混淆函数库更新表”,提交。我会定期查看大家提交上来的数据,加入到官方的混淆函数库中,不断的增强和完善官方混淆函数库,大家可以利用黑刀Dezender的自动升级功能对其进行升级!
2023-07-19 18:12:181

config.ini文件怎么解密

自解密文件和标准加密有什么区别? 可以用黑刀Dezender来试试,我不担保大家下载压缩包并解压后,会发现有一个“config.ini”的文件,这就是混淆
2023-07-19 18:12:292

英语单词关于迷惑

addle v.使昏乱;使腐坏 (addled adj.头脑混乱的) baffle v.使困惑,难倒 (baffling adj.令人困惑的) befuddle v.使迷惑,使为难;使酒醉昏迷 befuddlement n.迷惑不解 bemused adj.茫然的,困惑的 bewilder v.迷惑,混乱 bewildering adj.令人迷惑的,费解的 captivate v.迷惑,吸引 (captivation n.吸引力,魅力) confound v.使迷惑,搞混 daze v.使茫然,使眩晕 delirious adj.精神错乱的 delirium n.精神错乱 deranged adj.精神错乱的,有精神病的 derangement n.精神错乱 discombobulate v.使困惑,扰乱 discombobulated adj.扰乱的,打乱的 discomfited adj.困惑的,尴尬的 elude v.搞不清;逃避 enthrall v.迷惑,迷住 fascinate v.迷惑,迷住 illusive adj.迷惑人的,迷幻的 muddle n.迷惑,混乱 nonplus v.使窘困迷惑;n.迷惑,窘境 (nonplussed adj.窘困迷惑的) obfuscate v.使困惑,使迷惑 (obfuscation n.昏迷,困惑) obsess v.使…困窘,使…烦扰;迷住 quandary n.困惑,进退两难 stupefy v.(使)茫然,吓呆 (stupid adj.愚笨的)
2023-07-19 18:12:371

lua 怎么反编译

lua源文件--obfuscate-->lua源文件(混淆后)--compile-->luac文件(带调试用的变量名和行号)--strip-->luac文件(不带调试信息)lua/luac--加密/打包-->数据文件数据文件--解包/解密-->lua/luac-->lua虚拟机1. 跟踪,脱壳,解包,解密,获得 luac追 luaL_loadbuffer luaL_loadfile lua_load 应该可以找到 解密函数。hook 这3个函数,导出解密后的数据,直接就是 luac 文件。如果没编译甚至是 lua源文件。hook luaV_execute 可以拿到 Proto* ,想办法用 luaU_dump 导出。luaD_precall 应该没必要搞。2. 非标准 luac 处理我们有两种方案来处理得到的 luac1. 得到一个能够执行上述非标 luac 的 lua 版本搞清楚编译方式,改 lua 源文件,编译出一个,这样做什么都可以,还能编译出对应的 luadec 。如果能找到 lua51.dll 之类的就直接调用吧。但是,只能用于导出 luac 对比文件格式,或者执行找到的几个关键函数。2. 将非标 luac 转换成标准格式 luac,正所谓:山不来就我,我便去就山非标准 luac 是怎么做的:1. bad header 改文件头#define LUA_SIGNATURE "33Lua" // lua.h2. bad header 改数据类型// luaconf.h#define LUA_NUMBER_DOUBLE#define LUA_NUMBER doubleLUA_NUMBER to floatLUA_NUMBER_SCAN to "%f"LUA_NUMBER_FMT to "%.7g"l_mathop(x) to (x##f)lua_str2number to use strtof3. bad code OpCode 重定义// 改有 "ORDER OP" 的地方/* grep "ORDER OP" if you change these enums */enum OpCode; // lopcodes.hconst lu_byte luaP_opmodes[]; // lopcodes.cconst char *const luaP_opnames[]; // lopcodes.c
2023-07-19 18:12:461

加密的php文件怎么解密

只是用了一些特殊符号作为array的key和function的参数罢了,没啥好研究的,可以直接把这些特殊符号替换成英文就好了
2023-07-19 18:13:092

以o开头的单词有哪些?

obeisance n. 鞠躬;敬礼; obelisk n. 方尖石塔;短剑号;疑问记号; obese adj. 极肥胖的; obesity n. 肥胖; obey vt.顺从 vi.服从 扩展资料   obfuscate v. 使困惑;使迷惑;   obigor n.债务人;欠债者;   obituary a. 死亡的;   object n.物;物体;目的";   objection n.反对;异议;不喜欢;   objectionable adj. 令人厌恶的;   objective a.客观的;无偏见的;   objurgate v. 怒斥;谴责;   objurgation n. 叱责;非难;   oblation n. 宗教的供品;祭品
2023-07-19 18:13:191

非公开的加密算法比公开的加密算法安全么?

Kerckhoffs原则:秘密寓于密钥。换句话说,一个密码系统的安全性,应该仅仅依靠“密钥没有泄漏”这个前提。即使整个系统落到了敌人的手上,敌人了解了整个系统的所有细节,但如果敌人不知道密钥,你的传输还是安全的。满足这样严苛的条件的密码系统才是安全的。无论是在战争还是和平时期,你不能把保密的希望寄于你的系统/算法的秘密性。机械的可以拆解,软件的可以直接看汇编。你的密码系统的所有细节总会被有心人所一一拆解。这个时候,如果你的系统符合Kerckhoffs原则,那么即使敌人拆解了你的系统但不知道密钥,他也没有办法破译加密的信息。而在这点上,非公开和公开算法的区别就体现出来了:因为系统总会被别人知道,所以安全性就寓于算法是否符合Kerckhoffs原则。公开算法受全世界的密码学者研究,经受了很大的考验,有很多弱的算法就舍弃掉了,应用的时候对于算法的局限性了解得比较多,用起来可以更留心(用更长的密钥之类);非公开算法的话,因为除了作者之外别人都不知道,所以基本上没有人看过,加密的强度谁都不知道,可能有很好的攻击但是作者没发现所以以为很安全,但实际上一攻就破。这种非公开算法被破解的例子是很多的,不过我知道的都是中古的……比如说一个报纸有个公告栏,有些情侣会用自己的密码在上面调情,有一次一对情侣用自创密码讨论私奔的事情,然后好事的密码分析师花了点时间破解了,然后用这个密码体系发了一段加密信息,劝他们不要私奔……二战的话,Enigma密码机本来也想秘密化的,不过怎奈何间谍们啊……但现在的密码学不仅仅是加密信息,还有身份认证啊数字签名啊之类的。这些可以通过基本的密码学primitive再加上semantic security来做,具体可以查维基。这些东西的话,用自己的一套方法基本上就是死路一条……因为从系统的角度出发,自己设计的系统很难堵住每一个漏洞,而设计出来了的话也大概跟sematic security的系统差不多……你同学的想法有个学名,叫security through obscurity。实际上这个也不是不能用,但是不能将整个系统的关键凭托在非公开的系统上面。不过要是将AES啊RSA啊之类的算法很好地obfuscate,然后装成很无辜的数学计算模块,同时伪装另一套实际上不会用到的加密系统,假装整个系统都依赖于它,这种也构成很好的obscurity式防御。不过,这种防御也只能是一层外壳,整个系统实质上也应该依赖于AES或者RSA之类好算法的安全性。这样的话,即使伪装被去除,敌人也对AES或者RSA束手无策。
2023-07-19 18:13:291

打包混淆时出错,怎么搞都不行

  ProGuard来进行混淆打包,大大的优化Apk包的大小。但是注意ProGuard对文件路径的名名很有讲究,不支持括号,也不支持空格。在混淆过后,可以在工程目录的proguard中的mapping.txt看到混淆后的类名,方法名,变量名和混淆前的类名,方法名,变量名。  在使用Eclipse新建一个工程,都会在工程目录下生产配置project.properties和proguard-project.tx。  # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):  #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt  # Project target.  target=android-10  project.properties用于配置Android工程的一些属性,#号的话表示当前行是注释,这里的proguard.config就用于指定ProGuard的混淆配置文件,并对使用release方式打包应用程序时开启代码混淆功能。对于是否是使用release方式打包,和AndroidManifest.xml中application的android:debuggable属性有很多关系。如果该值为android:debuggable="true",那么最终就是debug方式打包。最明智的方式就是在AndroidManifest.xml并不显示的指定它,而是是打包工具在打包时来决定它最终的值。对于ant就是ant release或ant debug。而对于直接在Eclipse中使用run 或debgu来打包的话就是debug,使用export的话就是release.  proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt  这里的话指定了混淆的基本配置文件proguard-android.txt,和混淆的个性化配置文件proguard-project.txt。
2023-07-19 18:13:481

O开头的所有动词

自己查字典你 几年级?难道纸制的字典都没有?
2023-07-19 18:14:154

boost::bind是做什么的?为什么要使用它?

比如:这个是我写的:找出大于3小于6且能被2整除的数:#include <iostream>#include <functional>#include <algorithm>#include <boost/bind.hpp>using namespace std;using boost::bind;int main(){ int a[] = {0,1,2,3,4,5,6,7,8,9}; int* p = find_if(a, a+10, bind(logical_and<bool>(), bind(logical_and<bool>(), bind(greater<int>(), _1, 3), bind(less<int>(), _1, 6)), bind(logical_not<bool>(), bind(modulus<int>(), _1, 2)))); cout << *p;}以下为参考资料:#include <iostream>#include "boost/bind.hpp"void nine_arguments( int i1,int i2,int i3,int i4, int i5,int i6,int i7,int i8, int i9) { std::cout << i1 << i2 << i3 << i4 << i5 << i6 << i7 << i8 << i9 << " ";}int main() { int i1=1,i2=2,i3=3,i4=4,i5=5,i6=6,i7=7,i8=8,i9=9; (boost::bind(&nine_arguments,_9,_2,_1,_6,_3,_8,_4,_5,_7)) (i1,i2,i3,i4,i5,i6,i7,i8,i9);}又比如:#include <iostream>#include <string>#include <map>#include <algorithm>#include "boost/lambda/lambda.hpp"#include "boost/lambda/bind.hpp"int main() { using namespace boost::lambda; typedef std::map<int,std::string> type; type keys_and_values; keys_and_values[3]="Less than pi"; keys_and_values[42]="You tell me"; keys_and_values[0]="Nothing, if you ask me"; std::cout << "What"s wrong with the following expression? "; std::for_each( keys_and_values.begin(), keys_and_values.end(), std::cout << "key=" << bind(&type::value_type::first,_1) << ", value=" << bind(&type::value_type::second,_1) << " "); std::cout << " ...and why does this work as expected? "; std::for_each( keys_and_values.begin(), keys_and_values.end(), std::cout << constant("key=") << bind(&type::value_type::first,_1) << ", value=" << bind(&type::value_type::second,_1) << " "); std::cout << " "; // Print the size and max_size of the container (std::cout << "keys_and_values.size()=" << bind(&type::size,_1) << " keys_and_values.max_size()=" << bind(&type::max_size,_1))(keys_and_values);}How Does the Bind Library Improve Your Programs?Adapts functions and function objects for use with Standard Library algorithmsConsistent syntax for creating bindersPowerful functional compositionWhen using the algorithms from the Standard Library, you often need to supply them with a function or a function object. This is an excellent way of customizing the behavior of algorithms, but you often end up writing new function objects because you don"t have the tools necessary for functional composition and adaptation of argument order or arity. Although the Standard Library does offer some productive tools, such as bind1st and bind2nd, this is rarely enough. Even when the functionality suffices, that often implies suffering from awkward syntax that obfuscates the code for programmers who are not familiar with those tools. What you need, then, is a solution that both adds functionality and normalizes the syntax for creating function objects on-the-fly, and this is what Boost.Bind does.In effect, a generalized binder is a sort of lambda expression, because through functional composition we can more or less construct local, unnamed functions at the call site. There are many cases where this is desirable, because it serves three purposesreducing the amount of code, making the code easier to understand, and localizing behavior, which in turn implies more effective maintenance. Note that there is another Boost library, Boost.Lambda, which takes these properties even further. Boost.Lambda is covered in the next chapter. Why shouldn"t you just skip ahead to that library? Because most of the time, Boost.Bind does everything you need when it comes to binding, and the learning curve isn"t as steep.One of the keys to the success of Bind is the uniform syntax for creating function objects and the few requirements on types that are to be used with the library. The design takes focus away from how to write the code that works with your types, and sets it to where we are all most interestedhow the code works and what it actually does. When using adaptors from the Standard Library, such as ptr_fun and mem_fun_ref, code quickly becomes unnecessarily verbose because we have to provide these adaptors in order for the arguments to adhere to the requirements of the algorithms. This is not the case with Boost.Bind, which uses a much more sophisticated deduction system, and a straightforward syntax when the automatic deduction cannot be applied. The net effect of using Bind is that you"ll write less code that is easier to understand.How Does Bind Fit with the Standard Library?Conceptually, Bind is a generalization of the existing Standard Library functions bind1st and bind2nd, with additional functionality that allows for more sophisticated functional composition. It also alleviates the need to use adaptors for pointers to functions and pointers to class members, which saves coding and potential errors. Boost.Bind also covers some of the popular extensions to the C++ Standard Library, such as the SGI extensions compose1 and compose2, and also the select1st and select2nd functions. So, Bind does fit with the Standard Library, and it does so very well indeed. The need for such functionality is acknowledged, and at last in part addressed by the Standard Library, and also in popular extensions to the STL. Boost.Bind has been accepted for the upcoming Library Technical Report.
2023-07-19 18:14:321

英语Changes will remain in memory only怎么翻译?

变化只是个记忆罢了。
2023-07-19 18:14:4112

goagentx 用不了,出现以下内容是为什么?

socket.error: [Errno 48] Address already in use这个就是错误的原因,通信的端口已经被占用了。你之前应该是开过一次goagent了吧,并且没有关掉。看文件路径应该是Mac下吧,你可以打开终端,敲ps回车看一下:是不是也有中间那个有Python的那一行。不出意外的话应该是有的,说明你的goagent已经开了,你可以kill掉这个进程,然后就可以重开了。
2023-07-19 18:15:031

android 应用依赖某个库怎么封装成sdk

  方法一  使用eclipse导出jar包:我们知道一个java项目是可以用eclipse导出jar包的,安卓工程也一样,只要按普通的方法export就可以了。不过,export出来的包是没有混淆过的,如果你要混淆,还需要单独对你的jar包执行一次proguard程序,可参考proguard使用指南。  方法二  使用脚本打包:我个人比较喜欢该方法,因为android工程项目并不是只有JAVA代码,有的资源也需要提供出来,而使脚本可以更加定制化一些。  android的SDK默认提供了一个ant打包的脚本,具体使用方法,可参考之前的BLOG,使用ant打包APK及依赖包最佳解决办法  我们可以看出,打包,最终调用的其实是android sdk下的ant脚本,既然安卓已经帮我们写好了ant脚本,我们就好好利用。  使用上面的BLOG中介绍的方法,先在工程目录中生成你的build.xml,然后自己写一个target  <target name="sdk"  depends="-set-release-mode, -release-obfuscation-check, -compile, -post-compile, -obfuscate">  </target>  这段target代码,就是只执行到了混淆的脚本。然后我们在build.xml中选择右键,run as, 第二个ant Build,然后选择要执行的target为我们加上的sdk。  等执行完成后,就会在project/bin/proguard/obfuscated.jar找到你所要的jar包。
2023-07-19 18:16:251

哪些英语单词中的“a”读[e]的音

appleegg
2023-07-19 18:16:364

打包混淆时出错,怎么搞都不行

 ProGuard来进行混淆打包,大大的优化Apk包的大小。但是注意ProGuard对文件路径的名名很有讲究,不支持括号,也不支持空格。在混淆过后,可以在工程目录的proguard中的mapping.txt看到混淆后的类名,方法名,变量名和混淆前的类名,方法名,变量名。  在使用Eclipse新建一个工程,都会在工程目录下生产配置project.properties和proguard-project.tx。  # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):  #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt  # Project target.  target=android-10  project.properties用于配置Android工程的一些属性,#号的话表示当前行是注释,这里的proguard.config就用于指定ProGuard的混淆配置文件,并对使用release方式打包应用程序时开启代码混淆功能。对于是否是使用release方式打包,和AndroidManifest.xml中application的android:debuggable属性有很多关系。如果该值为android:debuggable="true",那么最终就是debug方式打包。最明智的方式就是在AndroidManifest.xml并不显示的指定它,而是是打包工具在打包时来决定它最终的值。对于ant就是ant release或ant debug。而对于直接在Eclipse中使用run 或debgu来打包的话就是debug,使用export的话就是release.  proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt  这里的话指定了混淆的基本配置文件proguard-android.txt,和混淆的个性化配置文件proguard-project.txt。
2023-07-19 18:16:421

U3D如何做代码混淆

提供几个代码混淆方案:1.Unity官方提供代码混淆服务,收费的2.CodeGuard.unitypackage插件,出包是混淆,方便,提供多种混淆选择,灵活,插件有破解版,测试可行,个人比较推荐.3.Crypto Obfuscator for .Net,但是不支持Mac
2023-07-19 18:17:082

eclipse打开几个安卓工程时提示的错误(如图),怎么解决,万分感谢。

adb update server
2023-07-19 18:17:153

如何混淆代码和相关配置

项目发布之前混淆是必不可少的工作,混淆可以增加别人反编译阅读代码的难度,还可以缩小APK包。 使用步骤: 1、修改project.properties文件: Java代码 收藏代码# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): # proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt 去掉proguard.config一行前面的#注释; 2、配置proguard-project.txt文件: 这个是主配置文件,里面配置哪些需要混淆,哪些不需要混淆的选项; 提供给外部的类、方法、变量等名字不能混淆; 在AndroidManifest中配置的类(Activity、Service等的子类及Framework类默认不会进行混淆) 不混淆Parcelable的子类,防止android.os.BadParcelableException Jni中调用的类 反射用到的类 项目中的实体类 3、导出项目: export签名项目。 4、查看是否混淆成功: 用反编译工具反编译并对比未混淆的代码; 5、运行ProGuard及其生成的文件介绍 在以release模式下打包apk时会自动运行ProGuard,这里的release模式指的是通过ant release命令或eclipse project->android tools->export signed(unsigned) application package生成apk。在debug模式下为了更快调试并不会调用proguard。 如果是ant命令打包apk,proguard信息文件会保存于<project_root>/bin/proguard文件夹内;如果用eclipse export命令打包,会在<project_root>/proguard文件夹内。其中包含以下文件: mapping.txt表示混淆前后代码的对照表,这个文件非常重要。如果你的代码混淆后会产生bug的话,log提示中是混淆后的代码,希望定位到源代码的话就可以根据mapping.txt反推。 dump.txt描述apk内所有class文件的内部结构 seeds.txt列出了没有被混淆的类和成员 usage.txt列出了源代码中被删除在apk中不存在的代码目前市面上有很多第三方应用加固的平台, 如果新应用发布前需要扫描或者加固的话,可以先试试免费的,例如腾讯御安全,建议自己先去加固测试下。
2023-07-19 18:17:221

freedom to operate opinion求翻译

自由表达观点。
2023-07-19 18:17:386

拜托那位英语高手帮我翻译下啊 ~急用 别用翻译软件啊!

3.5如何文件明智 生命太短,写crap ,没有人会读;如果你写crap ,没有人 会阅读它。因此,有点好文件是最好的。管理者往往 不明白这一点,因为即使是坏的文件,让他们有一个虚假的安全感 安全,他们不依赖于他们的程序员。如果有人 绝对坚持认为你写真正无用的文件,说是“和 悄悄地开始寻觅工作做得更好。 没有什么能比得上作为有效的把准确估计有关 大量的时间将会采取何种措施产生良好的文件成为一个估计 放松的需求文档。事实是,冷战和努力:文件, 想测试,可以采取许多倍的时间比发展中国家的代码。 17 良好的书面文件, _rst所有,良好的写作。我建议你 _nd书籍,写作,研究,和实践。不过,即使你是一个糟糕的 作家或有穷人的指挥语言,在其中你必须的文件, 金科玉律是所有你真的需要: 己所不欲,正如你将有 他们己所不欲,你“需要一段时间真的觉得谁在将读您的 文件,他们所需要的失控,以及您如何可以教导,以 他们。如果你这样做,你将是一个高于平均水平的文件作家,和 一个很好的程序员。 当谈到,其实记录代码本身,作为反对生产 文件指出,其实是可以阅读的非程序员,最好的程序员 我从未已知举行一个普遍的感受:写自我解释性代码 只有文件的代码的地方,你不能作出澄清,以书面 代码本身。有两个很好的理由。第一,谁需要 看到代码级别的文件将在大多数情况下,能够和喜欢阅读 代码无论如何。诚然,这似乎更容易向有经验的程序员 比对初学者。更重要的,但是该守则和 文件不能不一致的,如果没有文件。来源 代码可以在最坏的错误的和混乱。文件,如果不写 完美,可以说谎,这是一个几千倍更糟。 这并不使其更易于对负责的程序员。请问1 写自我解释性代码?这代表了什么,甚至什么意思?这意味着: _写代码知道会有人要读它; _应用的金科玉律; _使用什么规则,良好的写作,你可能有教训; _选择的解决办法很简单,即使您可以得到与 另一种解决办法更快; _ sacri_cing小优化,模糊码; _思考的读者和消费您的一些宝贵的时间 使其更易于对她的; _不要使用函数名称一样, 富“ , 网吧” ,或经济部“ !
2023-07-19 18:18:072

代码混淆 proguard怎么写

具体混淆的步骤简单。首先,我们需要在工程描述文件project.properties中,添加一句话,启用ProGuard。如下所示:[java] view plain copy# This file is automatically generated by Android Tools. # Do not modify this file -- YOUR CHANGES WILL BE ERASED! # # This file must be checked in Version Control Systems. # # To customize properties used by the Ant build system edit # "ant.properties", and override values to adapt the script to your # project structure. # # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt # Project target. target=android-19 这样,Proguard就可以使用了。当我们正常通过Android Tools导出Application Package时(或者使用ant执行release打包),Proguard就会自动启用,优化混淆你的代码。导出成功后,你可以反编译看看混淆的效果。一些类名、方法名和变量名等,都变成了一些无意义的字母或者数字,证明混淆成功
2023-07-19 18:18:141

php报错:Undefined variable和 No database selected 数据库 不存在,哪个高手帮忙解释下

一楼的 XXXX 1046是行数?一点一点检查 exit
2023-07-19 18:18:213

这一段怎么翻译?金融的!帮帮忙(请不要用机器翻译)

识别和分析复杂的金融监管机构的目标并不是一件易事。在金融监管发展的上个10至20年里,它被号召奉行的政策目标越来越广泛,而这些政策目标又并不一定存在于每条商业主线或者是相涉及的国家,而它们也并不总是相容一致的。一个平常的目标概述不应该混淆它们之间的相互依赖和相互作用,也不应模糊它们之间可能存在的冲突。如同总体政策目标一样,人们可以识别金融体系的整体稳定性,以及旨在建立对金融体系能够运作或存活的公众信心的核心元素。虽然这其中有很多中间目标---尤其是关系到诸如机构偿付能力,或者存款人、投资方或投保人的利益保障---但是,其最终目标仍在于确保作为核心的“公共利益”的金融稳定。正如金融危机反复证明的那样,这种公共利益显然并不能由市场独力承担,必须得有某种形式的政府当局的介入,包括限制商业活动以为全局稳定保驾护航的指导。因此,金融监管通常被认为是强制性的,或者,正如欧洲传统里涉及的思想一样,隶属于“公共治安”:公共团体执行其规定,违反则将受到刑事或民事制裁,而抵触条款将被宣布无效。
2023-07-19 18:18:291

foreign actors 除了外国演员有元首之类的意思吗?字典上只有演员的意思,英语翻译不出来

关联者,行动者,参与者亲:祝你学习进步,每天都开心V_V!望采纳,thx!
2023-07-19 18:18:363

android 代码混淆算法有哪些

  根据 SDK 的版本不同有 2 中不同的代码混淆方式,以上的 proguard.cfg 参数详解中所涉及到的信息是在较低版本 SDK 下的混淆脚本,事实上在高版本的 SDK 下混淆的原理和参数也与低版本的相差无几,只是在不同 SDK 版本的环境下引入混淆脚本的方式有所不同。具体方法如下:  低版本 SDK 下,项目中同时包含 proguard.cfg 和 project.properties 文件,则只需在 project.properties 文件末尾添加 proguard.config=proguard.cfg 再将项目 Export 即可。  高版本 SDK 下,项目中同时包含 proguard-project.txt 和 project.properties 文件,这时需要在 proguard-project.txt 文件中进行如下信息的配置,然后再将项目 Export 即可。下面以真实的文件进行演示说明。  复制代码  # This file is automatically generated by Android Tools.  # Do not modify this file -- YOUR CHANGES WILL BE ERASED!  #  # This file must be checked in Version Control Systems.  #  # To customize properties used by the Ant build system edit  # "ant.properties", and override values to adapt the script to your  # project structure.  #  # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):  #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt  proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt  # Project target.  target=android-16  复制代码  以上的配置信息即是 project.properties 文件中内容,蓝色文字为我们在代码混淆过程中需要添加的配置信息,其中:sdk.dir 为你在当前机器上 SDK 的安装路径。如果想保留某个包下的文件不被混淆,可以在 proguard-project.txt 文件中加入保留对应包名的语句即可。  复制代码  # To enable ProGuard in your project, edit project.properties  # to define the proguard.config property as described in that file.  #  # Add project specific ProGuard rules here.  # By default, the flags in this file are appended to flags specified  # in ${sdk.dir}/tools/proguard/proguard-android.txt  # You can edit the include path and order by changing the ProGuard  # include property in project.properties.  #  # For more details, see  # http://developer.android.com/guide/developing/tools/proguard.html  # Add any project specific keep options here:  -dontwarn com.cnki.android.cnkireader.**  -keep class com.cnki.android.cnkireader.** { *; }  # If your project uses WebView with JS, uncomment the following  # and specify the fully qualified class name to the JavaScript interface  # class:  #-keepclassmembers class fqcn.of.javascript.interface.for.webview {  # public *;  #}  复制代码
2023-07-19 18:18:451

Android怎么把一个现有工程打包成sdk

打包成aar
2023-07-19 18:18:552

Symbolic development

symbolism的发展不是symbolic development而是the development of symbolism,懂吗?symbolic development作为名词是一个学术用词,首先已经给你翻译过了
2023-07-19 18:19:032

如何根据mapping.txt还原混淆的代码

根据mapping.txt还原混淆的代码BEFOREHere"s the stack trace as obfuscated by ProGuard:Caused by: java.lang.NullPointerExceptionat net.simplyadvanced.ltediscovery.be.u(Unknown Source)at net.simplyadvanced.ltediscovery.at.v(Unknown Source)at net.simplyadvanced.ltediscovery.at.d(Unknown Source)at net.simplyadvanced.ltediscovery.av.onReceive(Unknown Source)AFTERAll you need to do is write one line in the command prompt, and the obfuscation will be removed, as you can see here:Caused by: java.lang.NullPointerExceptionat net.simplyadvanced.ltediscovery.UtilTelephony.boolean is800MhzNetwork()(Unknown Source)at net.simplyadvanced.ltediscovery.ServiceDetectLte.void checkAndAlertUserIf800MhzConnected()(Unknown Source)at net.simplyadvanced.ltediscovery.ServiceDetectLte.void startLocalBroadcastReceiver()(Unknown Source)at net.simplyadvanced.ltediscovery.ServiceDetectLte$2.void onReceive(android.content.Context,android.content.Intent)(Unknown Source)HOW TO DECODE STACK TRACEYou can choose either the command line method or GUI (Graphical User Interface) method.HOW TO DECODE STACK TRACE VIA GUI1) Open <android-sdk>/tools/proguard/bin/proguardgui.bat2) Select the “ReTrace” option on the left column.3) Add your mapping file and obfuscated stack trace.4) Click “ReTrace!”Thanks to David Bilik for mentioning this GUI method.HOW TO DECODE STACK TRACE VIA COMMAND LINE1) You will need your ProGuard"s mapping.txt file and the stack trace (Ex: stacktrace.txt) that you want to de-obfuscate.2) The easiest way to do the next step is copy both these files into your<android_sdk_root>/tools/proguard/bin.3) If you are on Windows, run the following command in the same directory as the files (make sure you change to your own file names):retrace.bat -verbose mapping.txt stacktrace.txt > out.txt4) out.txt will have the stack trace de-obfuscated. Now you can debug much easier and faster than before.
2023-07-19 18:19:251

高分英译汉!急!!!

上雅虎在线翻译
2023-07-19 18:19:343

代码混淆 proguard怎么写

具体混淆的步骤简单。首先,我们需要在工程描述文件project.properties中,添加一句话,启用ProGuard。如下所示:[java] view plain copy# This file is automatically generated by Android Tools. # Do not modify this file -- YOUR CHANGES WILL BE ERASED! # # This file must be checked in Version Control Systems. # # To customize properties used by the Ant build system edit # "ant.properties", and override values to adapt the script to your # project structure. # # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt # Project target. target=android-19 这样,Proguard就可以使用了。当我们正常通过Android Tools导出Application Package时(或者使用ant执行release打包),Proguard就会自动启用,优化混淆你的代码。导出成功后,你可以反编译看看混淆的效果。一些类名、方法名和变量名等,都变成了一些无意义的字母或者数字,证明混淆成功。
2023-07-19 18:19:441

安卓手机如何打开.downloading文件?

01 用WPS Office软件打开 在手机上,我们安装WPS Office软件可以直接打开.downloading文件文件。 .downloading表明文件正在下载,但文件无法使用,直到下载完成才可打开,当下载完成后,.downloading文件扩展名会自动重命名到正确的目标文件扩展名,例如在下载.xlsm文件,他会重新命名.downloading到.xlsm,这表明文件随时可以使用。 1、在手机上安装好WPS Office软件并打开它 2、在首页界面中,点击打开,选择XLS选项进入 3、就可以看到手机上的所有.xls文件 4、选择想要打开的文件进入,即可将它打开
2023-07-19 18:15:191

艾德希兰为什么叫黄老板?

是因为他的粉丝。ed sheeran刚刚出道的时候,在内地并没有太大的人气,知道他的人不多。但是有一位他的忠实粉丝,在A站音乐曲注册成为了up主,这位粉丝的网名就叫作黄老板。而他在A站上一心推荐ed sheeran的音乐,很多网友也是通过黄老板知道了ed sheeran。ed sheeran这个名字比较难拼写,他的中文名字爱德华·克里斯多弗·希兰难记难叫,于是网友就开始用黄老板这个称呼叫ed sheeran。ed sheeran其他昵称:之前ed sheeran做客美国一综艺脱口秀的时候,还被问及到中国网友叫他黄老板,他喜不喜欢这个名字。ed sheeran表示自己对黄老板这个称号很满意,很喜欢。除了黄老板这个昵称之外,有些粉丝还会叫他泰迪熊,或者咩咩。
2023-07-19 18:15:201

DataTable.Columns怎样取值

沮是不是退傥照常欣
2023-07-19 18:15:225

OpenGl ES 2.0 Learn For Android(五)碰撞检测

在现实生活里,碰撞是怎样发生的呢?是两个实体的边缘相接触。在OpenGL的视图世界里,肯定也是这个样子。但是我们不可能把一个物体的所有点都描述出来,然后在另一个集合里看是否有点的存在。 那么最简单的方式,就是将一个实体看做一个球,它的假设它的外边缘都在半径里。那么这个问题就简化成了,这个半径范围内,是否会有其他物体存在。 那我们在OpenGL世界坐标系里放置半径R1一个物体。如果是世界坐标系里放半径R2另一物体,那么,只要两个物体的中心位置距离dis小于两个物体半径和(R1+R2),就可以认为它们相交。这个是很容易理解的。 《OpenGL ES应用开发实践指南:Android卷》则用手指触点检测相交。其实这个问题并没有发生变化。我们还是在世界坐标系里看相交就好了。投射到屏幕的一个点,同样可以转换为世界坐标系里的两个点。这里涉及一些奇怪的技巧。比如,将一个不知道Z轴位置的点设置为-1/1。 这边我会做一个更简易的版本。我在世界坐标系里放置一个边长为1的正方体。如下图所示。 在之前讲到三角形的画法的时候,有讲到三角带。这是openGL为了节省节点,设计的绘制方案。这里的话,顶点也按对应的方式进行排布。 为了方便,我并没有绘制它的上下两个面。 将上一篇的顶点下面方式赋值。颜色也对应改改。 在上一篇的时候,我只用了modelMatrix和projectionMatrix。因为上一篇使用的默认视角,也就是从Z轴往它的负方向看去。 其实这一篇方向还是不会发生变化,但是这里需要用到视角的概念,也就是 setLookAtM() 这个方法。 所以引入这三个矩阵 viewMatrix 用来保存相机矩阵。 viewProjectionMatrix 用来保存透视投影和相机矩阵的乘积。 invertedViewProjectionMatrix 用来保存 viewProjectionMatrix 的逆矩阵。 因为要拿到触碰事件,给GlSurfaceView.setOnTouchListener 有意思的来了。我们知道,Android View的坐标系是左上角为原点,往右是x正方向,往下是y正方向。但是OpenGL ES归一化坐标里,坐标原点在屏幕正中央,往右是x正方向,往上是y正方向。 以X轴为例,要做是的从[0,1]映射到[-1,1]。那么x*2-1就可以达到想要的效果。这个如果后面有时间介绍构型函数,会见得很多。 我们拿到了触点的归一化坐标,我们要转换成世界坐标,这样才能做距离计算。 计算距离的工具类直接从示例中拿出来 这里光使用计算距离的方法,可以看书的9.2章。我觉得我肯定是没作者讲得好了。 使用上一篇用的投影参数,矩阵显得有些大了,所以在使用前,先把他们都缩小到1/5大小。 这里的话我要偷些懒,把 handleTouchPress 直接用上工具类里的方法。 在将点击的坐标转换为世界坐标里线段的方法里,有用到 invertedViewProjectionMatrix 它是 viewProjectionMatrix 的逆矩阵 那我做的判断是,如果点击了正方体,则停止旋转。效果如下 demo地址: https://github.com/YueZhiFengMing/LearnOpenGl/tree/master/Fourth3D
2023-07-19 18:15:231

下列技术不属于信息获取技术的是

d
2023-07-19 18:15:305

怎样安装eclipse开发android

11)首先,下载android SDK.介绍一种非常简单的方法,一并下载eclipse.在百度中输入android SDK,进入搜索界面。选中第一条。2)如果你已经有eclipse,你可以直接在eclipse中进行android SDK插件的安装。方法就是点击上面菜单里的help,选择install new software进行添加SDK。具体方法见经验如何在eclipse中添加android SDk。2进入下载界面后,选择适合自己电脑的SDK进行下载。这里下载的是android开发工具,非常的简单实用,不需要我么重新下载eclipse,在这个下载包中会自带一个eclipse FOR android的develop工具,我们直接在里面就可以进行android的开发。3下载完成后解压,解压后我们进入文件名为eclipse的文件夹中。点击eclipse应用程序,运行。运行如图,和我们常用的eclipse是不一样的因为这个是android的开发工具,只适用于开发android。里面有好的插件已经提供给我们,不需要再进行安装。4进入eclipse界面后,开始新建android项目。输入新建项目名,如果没有特殊要求,点击next一直至最后完成。开始的配置只是一个大体的框架的构建,这些我们可以以后进行修改,最总要的还是代码的编写。5所有配置都完成后就可以开始进行android的开发了。如图:进行android开发的时候建议不要用拖拽控件的方式,建议直接编写代码。ENDjava环境变量配置这里顺便介绍一下java环境变量的配置。1)首先打开环境变量的界面,添加一个JAVA_HOME的值。右击计算机属性,在左侧有高级设置,进入后就会看见环境变量选项了。2)在系统变量中建立java_home,将你的java SDK所在的路径放在里面。建立classpath。同样在系统变量中新建一个classpath,在下面输入.;即可,不用输入其他的值。运行cmd,测试。按win+R打开命令面板,输入cmd,进入后输入java -version然后回车,接着输入javac,回车,看结果是否与下图相同。这里需要注意的是java -version的java后面是有空格的。
2023-07-19 18:15:301

internal 在.NET中是什么意思

在当前的项目中可以存取,该访问权限一般用于组建开发,以为它可以是组建以私有的方式工作,而该项目外的其他代码无法访问。
2023-07-19 18:15:332

ed sheeran为什么叫黄老板?

ed sheeran叫黄老板的原因:ed sheeran刚刚出道的时候,在内地并没有太大的人气,知道他的人不多。但是有一位他的忠实粉丝,在A站音乐曲注册成为了up主,这位粉丝的网名就叫作黄老板。而他在A站上一心推荐ed sheeran的音乐,很多网友也是通过黄老板知道了ed sheeran。ed sheeran这个名字比较难拼写,他的中文名字爱德华·克里斯多弗·希兰难记难叫,于是网友就开始用黄老板这个称呼叫ed sheeran。ed sheeran的演艺经历艾德·希兰(EdSheeran),本名爱德华·克里斯多弗·希兰(EdwardChristopherSheeran),1991年2月17日出生于英国英格兰西约克郡。2011年6月,推出首支单曲《TheATeam》荣获英国单曲榜第三名,同时该单曲在第55届格莱美颁奖典礼中被提名为年度最佳歌曲。2012年在第32届全英音乐奖中荣获英国最佳男艺人、英国最具突破艺人、英国最佳单曲和英国最佳专辑四项提名。2014年第二张专辑专辑《X》在英国销售达170万张。2015年在全英音乐奖颁奖盛典荣获“年度最佳男歌手”和“年度最佳专辑”两项大奖。2016年2月,在第58届格莱美音乐奖获得年度单曲奖和最佳流行歌手奖,同时凭《ThinkingOutLoud》获年度歌曲。2017年1月28日,艾德·希兰收获第一首公告牌冠军单曲《ShapeofYou》。同年3月3日,发行第三张专辑《÷》。2018年,获得第60届格莱美奖最佳流行歌手、最佳流行专辑奖。2019年7月12日,发行第四张录音室专辑《No.6CollaborationsProject》,同年获得福布斯100名人榜排名第5位。2019年12月24日,艾德·希兰宣布正式暂别乐坛。
2023-07-19 18:15:341

android 没有驱动程序怎么解决

可以使用电脑管家手机助手连接电脑与手机。方法一:双击桌面图标“QQ手机管理for android”,进入QQ手机管理页面。方法二:打开电脑管家,点击的“QQ手机管理”图标,进入QQ手机管理页面。
2023-07-19 18:15:372

internal error是什么意思

内部错误
2023-07-19 18:15:185

busyboxforandroidndk模块干什么的

busyboxforandroidndk模块是是非常好用的magisk模块可以对很多指令进行编译处理,让你的手机可以进行更多的指令执行,使用其他的软件和程序也会更加的流畅。它是一个集成了常用的命令和工具的软件。而通过n k进行编译生产大大缩小了它的体积是一个优化型的模块。
2023-07-19 18:15:151

除甲醛比较好的品牌

以下是一些除甲醛比较好品牌:* FOH希望树:作为一个专业的除醛品牌,FOH希望树推出了除甲醛果冻、除甲醛喷雾等高效实用的除甲醛产品,拥有安全无害、绿色环保、高效净化等优势,成为除甲醛品牌十大排名中的尖子生。* 荃芬:这家是日本GRAFTON株式会社在中国除甲醛领域的战略合作伙伴,拥有基于GRAFTON的技术与产品体系,除醛实力较为有保障。* 树派环保:树派环保是光触媒领域的头部生产商之一,除甲醛的同时能够杀灭多种细菌,干净环保无污染。* 浙大冰虫:浙大冰虫依托于浙江大学的科研能力,为消费者提供甲醛检测与清降服务,有着严谨的服务体系,值得信赖。* 绿色家缘:绿色家缘作为国内除甲醛的先行品牌,15年深耕细作,口碑比较好。它有一套5C除醛闭环和一套G32标准治理流程,除甲醛效果可靠。* 叶子环保:叶子环保在空气净化领域已获相关专利十余项,还是行业标准的起草单位之一,除甲醛实力受到了社会各界的广泛认可。* 哈贝利:哈贝利是一家以研究和开发纳米新技术产品为主的高科技有限公司除甲醛产品从纳米技术着手,成功开发出了室内纳米空气净化剂、家具纳米甲醛去除剂、新车纳米甲醛去除剂等系列环保产品。* 青蛙先生:青蛙先生创新出了一套360污染源治理工法,综合治理能力较强。* 净美士:净美士以持续改善室内空气环境、营造绿色环保为己任,具有极高的品牌知名度和良好的口碑。* 奥因:奥因是国内率先引进日本光触媒净化技术并实现自主研发、生产的环保高新技术企业,拥有完全的知识产权。此外,还有森家环保、山山、海尔、东方神盾、飞利浦、竹晶、思语、玛雅蓝等品牌。请注意,这些品牌的排名不分先后,而且每个品牌都有其特点和优缺点。在选择除甲醛产品时,需要根据你的具体情况进行选择。同时,选择产品时需要谨慎判断其性能和安全性,避免购买不合格或低质量的产品。
2023-07-19 18:15:152

艾德希兰为什么叫黄老板?

可能不少伙伴在刚接触Ed Sheeran的音乐时,都会发现网上不少粉丝称Ed Sheeran为黄老板。粉丝对偶像起一个昵称是常有之事,列如嘻哈歌手Eminem被称为姆爷,英国才子San Smith被称为骚姆等等。但是很多歌手昵称都是与名字有关,那Ed Sheeran为什么称为黄老板呢?其实这里面算是有个故事。在Ed Sheeran知名度还不高时,在弹幕网站ACFUN音乐区某位UP主叫黄老板。而他注册了Ed Sheeran这个ID并且推荐Ed Sheeran的音乐,而这个用户也非常喜欢Ed Sheeran,所以后来大家都称EdSheeran为黄老板。再看看这张图片,看一看四周。有没有发现就黄老板一个人。没错,就他一人,这是一个人的战斗,身边没有什么帅哥美女。心疼我黄老板!!!黄老板用的吉他更是槽点无数,用的都是小于常规大小的吉他,而且还会在角上涂鸦,画上专辑的图案。
2023-07-19 18:15:132

windowsform如何调整Columns间距

这其实是一个基本技巧,但今天却发现另外技巧,拿出来分享。希望能给大家有所帮助。方法/步骤首先我们讲解一下常规方法,首先打开EXCEL,选择多行或多列。我们这里选择多行。在“格式”菜单中选择“行高”或“列宽”命令 在“行高”或“列宽”窗口设置好的行高值或列宽值。 这个时候我们就可以达到批量修改行高或列宽的数值。但有没有更快捷的方法,下面的方法你可以试一下。首先我们选择要批量调整行高或列宽的行或列。我们可以配合SHIFT或CTRL进行连续选择或不连续选择。这个时候我们再拖动行之间的直线或列之间的直线,你可以看到像素,你可以根据显示数据调整行高或列宽。这个时候你同样也发现我们达到批量修改行高列宽的数值,这个方法比起传统的方法更快速,大家可以试一下哦。
2023-07-19 18:15:121

跪求这部是什么动漫!!!

other一个恐怖动漫,关于死者的推理。
2023-07-19 18:15:1111

最近要配置安卓环境,遇到一个问题:openCV for android 这块出问题了

整个项目的结构图:编写DetectFaceDemo.java,代码如下:[java] view plaincopyprint?package com.njupt.zhb.test; import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.core.MatOfRect; import org.opencv.core.Point; import org.opencv.core.Rect; import org.opencv.core.Scalar; import org.opencv.highgui.Highgui; import org.opencv.objdetect.CascadeClassifier; // // Detects faces in an image, draws boxes around them, and writes the results // to "faceDetection.png". // public class DetectFaceDemo { public void run() { System.out.println(" Running DetectFaceDemo"); System.out.println(getClass().getResource("lbpcascade_frontalface.xml").getPath()); // Create a face detector from the cascade file in the resources // directory. //CascadeClassifier faceDetector = new CascadeClassifier(getClass().getResource("lbpcascade_frontalface.xml").getPath()); //Mat image = Highgui.imread(getClass().getResource("lena.png").getPath()); //注意:源程序的路径会多打印一个‘/",因此总是出现如下错误 /* * Detected 0 faces Writing faceDetection.png libpng warning: Image * width is zero in IHDR libpng warning: Image height is zero in IHDR * libpng error: Invalid IHDR data */ //因此,我们将第一个字符去掉 String xmlfilePath=getClass().getResource("lbpcascade_frontalface.xml").getPath().substring(1); CascadeClassifier faceDetector = new CascadeClassifier(xmlfilePath); Mat image = Highgui.imread(getClass().getResource("we.jpg").getPath().substring(1)); // Detect faces in the image. // MatOfRect is a special container class for Rect. MatOfRect faceDetections = new MatOfRect(); faceDetector.detectMultiScale(image, faceDetections); System.out.println(String.format("Detected %s faces", faceDetections.toArray().length)); // Draw a bounding box around each face. for (Rect rect : faceDetections.toArray()) { Core.rectangle(image, new Point(rect.x, rect.y), new Point(rect.x + rect.width, rect.y + rect.height), new Scalar(0, 255, 0)); } // Save the visualized detection. String filename = "faceDetection.png"; System.out.println(String.format("Writing %s", filename)); Highgui.imwrite(filename, image); } } package com.njupt.zhb.test;import org.opencv.core.Core;import org.opencv.core.Mat;import org.opencv.core.MatOfRect;import org.opencv.core.Point;import org.opencv.core.Rect;import org.opencv.core.Scalar;import org.opencv.highgui.Highgui;import org.opencv.objdetect.CascadeClassifier;//// Detects faces in an image, draws boxes around them, and writes the results// to "faceDetection.png".//public class DetectFaceDemo { public void run() { System.out.println(" Running DetectFaceDemo"); System.out.println(getClass().getResource("lbpcascade_frontalface.xml").getPath()); // Create a face detector from the cascade file in the resources // directory. //CascadeClassifier faceDetector = new CascadeClassifier(getClass().getResource("lbpcascade_frontalface.xml").getPath()); //Mat image = Highgui.imread(getClass().getResource("lena.png").getPath()); //注意:源程序的路径会多打印一个‘/",因此总是出现如下错误/** Detected 0 faces Writing faceDetection.png libpng warning: Image* width is zero in IHDR libpng warning: Image height is zero in IHDR* libpng error: Invalid IHDR data*/ //因此,我们将第一个字符去掉 String xmlfilePath=getClass().getResource("lbpcascade_frontalface.xml").getPath().substring(1); CascadeClassifier faceDetector = new CascadeClassifier(xmlfilePath); Mat image = Highgui.imread(getClass().getResource("we.jpg").getPath().substring(1)); // Detect faces in the image. // MatOfRect is a special container class for Rect. MatOfRect faceDetections = new MatOfRect(); faceDetector.detectMultiScale(image, faceDetections); System.out.println(String.format("Detected %s faces", faceDetections.toArray().length)); // Draw a bounding box around each face. for (Rect rect : faceDetections.toArray()) { Core.rectangle(image, new Point(rect.x, rect.y), new Point(rect.x + rect.width, rect.y + rect.height), new Scalar(0, 255, 0)); } // Save the visualized detection. String filename = "faceDetection.png"; System.out.println(String.format("Writing %s", filename)); Highgui.imwrite(filename, image); }}3.编写测试类:[java] view plaincopyprint?package com.njupt.zhb.test; public class TestMain { public static void main(String[] args) { System.out.println("Hello, OpenCV"); // Load the native library. System.loadLibrary("opencv_java246"); new DetectFaceDemo().run(); } } //运行结果: //Hello, OpenCV // //Running DetectFaceDemo ///E:/eclipse_Jee/workspace/JavaOpenCV246/bin/com/njupt/zhb/test/lbpcascade_frontalface.xml //Detected 8 faces //Writing faceDetection.png package com.njupt.zhb.test;public class TestMain { public static void main(String[] args) { System.out.println("Hello, OpenCV"); // Load the native library. System.loadLibrary("opencv_java246"); new DetectFaceDemo().run(); }}//运行结果://Hello, OpenCV////Running DetectFaceDemo///E:/eclipse_Jee/workspace/JavaOpenCV246/bin/com/njupt/zhb/test/lbpcascade_frontalface.xml//Detected 8 faces//Writing faceDetection.png
2023-07-19 18:15:081

ant design中列数据图片时怎么写columns

const columns = [{title: "申报批次",dataIndex: "declareBatch",sorter: true,/*render: name => `${name.first} ${name.last}`,*//*render:()=>count++,*/width: "18%",}, {title: "被考机构",dataIndex: "admittedOrganization",width: "19%",}, {title: "申报截止日期",dataIndex: "dueDate",width: "12%",},{title: "考核时间",dataIndex: "examinationDate",render: (msg => (<span>{msg[0]+"~"+msg[1]}</span>)),width: "20%",},{title: "状态",dataIndex: "type",render: msg => msg === "待确认" ? <span style={{color:"green"}}>{msg}</span> : (msg==="待提交"?<span style={{color:"orange"}}>{msg}</span>:(msg==="待审批"?<span style={{color:"red"}}>{msg}</span>:<span>{msg}</span>)),width: "10%",},{title: "备注",dataIndex: "note",width: "10%",},{title: "操作",key: "operation",render: (text, record) => (<span><a><Popconfirm placement="topLeft" title={"确定要关闭该申报计划吗?"}visible={this.props.commonTableReduce.get("popVisible")}>关闭</Popconfirm></a><span className="ant-divider"></span><a><span>查看</span></a></span>),width: "12%",}];上面是Table中引用的clumn,最后一栏的操作里的Popconfirm的onVisibleChange等方法怎么调用下方的方法?
2023-07-19 18:15:052