小编Col*_*ire的帖子

使用 inetd 或不使用 inetd...我什么时候应该在我的网络服务器程序中使用 inetd?

谁能给出一组简明的现实世界考虑因素,以推动选择是否使用 inetd 来管理充当网络服务器的程序?

(如果使用inetd,我认为它会改变程序中网络代码的要求,所以我认为它肯定与编程相关,而不是一般IT)

这个问题是基于我见过的一个实现,该实现使用由 inetd 管理的控制程序来启动一个网络监听器,然后该监听器永远运行并承受恒定的重负载。它似乎不太适合教科书 inetd 使用配置文件(按需、不经常使用、轻量级),这让我对更普遍的问题产生了兴趣。

network-programming inetd

6
推荐指数
1
解决办法
8927
查看次数

EMGU CV 2.4.9人脸识别准确性问题

我已经按照代码项目中的示例代码创建了一个使用EMGUCV的人脸识别系统.我已经训练了2个人的数据库,每个人有10个图像.当网络摄像头检测到这些人并且能够正确显示名称但问题是在受过训练的数据库中不存在的第三个人通过网络摄像头检测时,它将采用最近的面并在其上显示名称而不是显示"未知".如何提高准确度?我试图改变阈值但没有帮助.出了什么问题?

currentFrame = grabber.QueryFrame().Resize(320, 240, 
Emgu.CV.CvEnum.INTER.CV_INTER_CUBIC);

currentFrame.SmoothBlur(320, 240);
gray = currentFrame.Convert<Gray, Byte>();
Rectangle[] facesDetected = face.DetectMultiScale(gray, 1.2, 10, new 
Size(50, 50), Size.Empty);

 for (int j = 0; j < facesDetected.Length; j++)
 {
      facesDetected[j].X += (int)(facesDetected[j].Height * 0.15);
      facesDetected[j].Y += (int)(facesDetected[j].Width * 0.22);
      facesDetected[j].Height -= (int)(facesDetected[j].Height * 0.3);
      facesDetected[j].Width -= (int)(facesDetected[j].Width * 0.35);

      result = currentFrame.Copy(facesDetected[j]).Convert<Gray, byte>().Resize(100, 100, Emgu.CV.CvEnum.INTER.CV_INTER_CUBIC);
      result._EqualizeHist();
      currentFrame.Draw(facesDetected[j], new Bgr(Color.Red), 2);

      if (trainingImages.ToArray().Length != 0)
      {
          recog = new LBPHFaceRecognizer(1, 10, 8, 8, 10000);
          //recog = new EigenFaceRecognizer(0, …
Run Code Online (Sandbox Code Playgroud)

c# opencv face-recognition emgucv

6
推荐指数
1
解决办法
959
查看次数

如何以MVP模式将上下文传递到存储库

我一直在学习和整合MVP pattern,很少有问题。

我从这张图中了解到的是

活动将创建的实例Presenter,并将其引用和model对象传递给演示者

MainPresenter mainPresenter = new MainPresenter(this, new MainModel());
Run Code Online (Sandbox Code Playgroud)

接下来,如果演示者需要从本地首选项或远程存储或获取任何数据,它将询问模型。

然后模型将询问存储库以存储和检索数据。

在此处输入图片说明

我遵循了一些教程,这就是我实现模式的方式。

接口

public interface MainActivityMVP {

    public interface Model{

    }

    public interface View{
        boolean isPnTokenRegistered();
    }

    public interface Presenter{

    }
}
Run Code Online (Sandbox Code Playgroud)

活动

MainPresenter mainPresenter = new MainPresenter(this, new MainModel());
mainPresenter.sendDataToServer();
Run Code Online (Sandbox Code Playgroud)

主持人

public void sendDataToServer() {

    //  Here i need to ask `model` to check 
        do network operation and save data in preference
}
Run Code Online (Sandbox Code Playgroud)

现在的问题是我需要访问上下文sharedPreference,但是我没有经过context任何地方。我也不想使用static context。我想知道将上下文传递到MVP模式的正确方法。

performance android android-layout android-fragments android-mvp

6
推荐指数
1
解决办法
1434
查看次数

了解.Net配置选项

我对.Net v2中dll,ASP.net网站等的.Net配置的各种配置选项感到困惑 - 尤其是在考虑配置文件在链接的UI /最终用户端的影响时.

因此,例如,我使用的一些应用程序使用我们访问的设置:

string blah = AppLib.Properties.Settings.Default.TemplatePath;
Run Code Online (Sandbox Code Playgroud)

现在,这个选项似乎很酷,因为成员是强力键入的,我将无法输入Visual Studio 2005 IDE中不存在的属性名称.我们在命令行可执行项目的App.Config中得到这样的行:

<connectionStrings>
    <add name="AppConnectionString" connectionString="XXXX" />
    <add name="AppLib.Properties.Settings.AppConnectionString" connectionString="XXXX" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

(如果我们没有第二个设置,那么将一个调试dll发布到live box的人可能已经嵌入了调试连接字符串 - eek)

我们也有像这样访问的设置:

string blah = System.Configuration.ConfigurationManager.AppSettings["TemplatePath_PDF"];
Run Code Online (Sandbox Code Playgroud)

现在,这些看起来很酷,因为我们可以从dll代码或exe/aspx代码访问设置,我们在Web或App.config中需要的只是:

<appSettings>
   <add key="TemplatePath_PDF" value="xxx"/>
</appSettings>
Run Code Online (Sandbox Code Playgroud)

但是,当然可能没有在配置文件中设置值,或者字符串名称可能输入错误,因此我们遇到了一组不同的问题.

所以......如果我的理解是正确的,那么前面的方法会给出强大的输入,但是在dll和其他项目之间分配不好的值.后者提供更好的共享,但键入较弱.

我觉得我必须遗漏一些东西.目前,我甚至不关心应用程序能够将值写回配置文件,加密或类似的东西.此外,我已经决定存储任何非连接字符串的最佳方法是在数据库中...然后我要做的另一件事就是在数据库连接问题时将电话号码存储给文本人员,所以他们必须存放在DB外面!

.net c# configuration

5
推荐指数
1
解决办法
788
查看次数

更改 USERPostMessageLimit 的后果

我们的遗留应用程序之一严重依赖于PostThreadMessage()线程间通信,因此我们将注册表中的 USERPostMessageLimit 增加到超出正常的 10.000。

然而,MSDN 上的文档指出“这个限制应该足够大。如果您的应用程序超出了限制,则应该重新设计,以避免消耗如此多的系统资源。” [ 1 ]

谁能告诉我消耗太多系统资源到底是如何表现出来的?系统资源到底是什么?我可以以某种方式监视应用程序对系统资源的使用情况吗?任何信息都将非常有助于决定是否值得花费时间和精力来重新设计此应用程序。

winapi

5
推荐指数
1
解决办法
4692
查看次数

原因:java.lang.IllegalStateException:无法在Android 6.0设备中创建目录

我必须使用DownloadManager存储从url下载的图像,并将其存储到sdcard中,并带有我自己的目录,例如“ xyz”。这是我的代码

File img_directory = null;

img_directory = new File(Environment.getExternalStorageDirectory() + "/xyz");
if (!img_directory.exists()) {
    img_directory.mkdirs();
    DownloadManager mgr = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
    Uri downloadUri = Uri.parse("my image url");
    DownloadManager.Request request = new DownloadManager.Request(downloadUri);
    request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE)
      .setAllowedOverRoaming(true)
      .setTitle("Demo")
      .setDescription("Something useful. No, really.")
      .setNotificationVisibility(DownloadManager.Request.VISIBILITY_HIDDEN);
      .setDestinationInExternalPublicDir(Environment.getExternalStorageDirectory().getAbsolutePath() + "/xyz", image.jpeg);
    mgr.enqueue(request);
}
Run Code Online (Sandbox Code Playgroud)

此代码将在Android 5.1.1上运行。当我在6.0中运行相同的代码时,会引发如下错误

Caused by: java.lang.IllegalStateException: Unable to create directory: /storage/emulated/0/storage/emulated/0/xyz at android.app.DownloadManager$Request.setDestinationInExternalPublicDir(DownloadManager.java:538)
Run Code Online (Sandbox Code Playgroud)

我已在清单文件中添加了“读取”和“写入”权限。如何解决此错误?有谁能帮助我?提前致谢。

android android-sdcard imagedownload android-download-manager

5
推荐指数
1
解决办法
6665
查看次数

在Android webview中查看google文档中的pdf时"无法预览"

使用google doc链接在android中的webview中打开pdf: -

webView.loadUrl("http://docs.google.com/gview&embedded=true&url=" + getIntent().getStringExtra(CONSTANT.pdfurl));
Run Code Online (Sandbox Code Playgroud)

对于一些pdf

"no preview availbale"
Run Code Online (Sandbox Code Playgroud)

发生在webview中,对于某些pdf它总是发生,我知道这个问题已被多次询问并且已经看到所有的stackoverflow和互联网但是找不到任何令人满意的解释.

如何知道在谷歌文档中查看pdf时何时"无法预览"以及如何解决此问题

进度条自动停止,有时不显示任何内容

这是我的完整执行代码: -

webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setBuiltInZoomControls(true);

progressBar.setVisibility(View.VISIBLE);

webView.loadUrl("http://docs.google.com/gview&embedded=true&url=" + getIntent().getStringExtra(CONSTANT.pdfurl));

webView.setWebViewClient(new WebViewClient() {

            @Override
            public void onPageStarted(WebView view, String url, Bitmap favicon) {

                super.onPageStarted(view, url, favicon);
                progressBar.setVisibility(View.VISIBLE);

            }

            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return false;
            }
            @Override
            public void onPageFinished(WebView view, String url) {
                // do your stuff here
                progressBar.setVisibility(View.GONE);
                webView.setVisibility(View.VISIBLE);
            }

            @Override
            public void onReceivedError(WebView view, int errorCode,
                                        String description, String failingUrl) {
                view.loadUrl("about:blank"); …
Run Code Online (Sandbox Code Playgroud)

android google-docs webview

5
推荐指数
1
解决办法
2713
查看次数

找不到参数api()的方法[目录'libs']

打开文件

这是我的gradle文件:

apply plugin: 'com.android.application'

    android {
        compileSdkVersion 27
        buildToolsVersion "27.0.1"
        defaultConfig {
            applicationId "com.landdrops.cricketfantacy.androidbottom"
            minSdkVersion 21
            targetSdkVersion 27
            versionCode 1
            versionName "1.0"
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard android.txt'), 'proguard-rules.pro'
            }
        }
    }

    dependencies {
        implementation fileTree(include: ['*.jar'], dir: 'libs')
        implementation 'com.android.support:appcompat-v7:27.0.1'
        implementation 'com.android.support:design:27.0.1'
        implementation 'com.android.support.constraint:constraint-layout:1.0.2'
        testImplementation 'junit:junit:4.12'
        androidTestImplementation 'com.android.support.test.runner:1.0.2'
        androidTestImplementation 'com.android.support.test.espresso:espresso-core:2.2.2'
    }
Run Code Online (Sandbox Code Playgroud)

我正进入(状态

错误:(23,0)在类型org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler的对象上找不到参数[目录'libs']的方法实现()。打开文件

android android-studio android-gradle-3.0

5
推荐指数
2
解决办法
6949
查看次数

IOException 无法删除路径

我在我的一个项目中遇到此错误。

失败:构建失败并出现异常。

  • 什么地方出了错:

    任务“:app:transformClassesWithDesugarForDevServerDebug”执行失败。com.android.build.api.transform.TransformException:java.io.IOException:无法删除路径 'D:\Android\Projects\uralenergo\app\build\intermediates\transforms\desugar\devServer\debug\1.jar' 。

  • 尝试:
    使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。使用 --scan 运行以获得完整的见解。

  • 在https://help.gradle.org获取更多帮助

    9 秒内构建失败

我经常从事这个项目,当我尝试在手机上运行我的应用程序时,我厌倦了在 40% 的情况下看到此错误。

如果我执行“重建项目”,错误就会消失并且应用程序将被编译。但在构建应用程序 2-3 次后,此错误再次出现。

这个项目非常大,我不能把时间浪费在重建项目上。我尝试手动删除该文件夹。但这对我没有帮助。

构建.gradle 文件:

buildscript {
    ext.kotlin_version = '1.2.3-1'
    repositories {
        jcenter()
        mavenCentral()
        maven { url 'https://maven.fabric.io/public' }
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'
        classpath "io.realm:realm-gradle-plugin:3.7.1"
        classpath 'io.fabric.tools:gradle:1.24.4'
        classpath 'com.google.gms:google-services:3.2.0'
    }
}

allprojects{
    repositories{
        jcenter()
        google()
    }
}

apply plugin: 'idea'
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
apply plugin: 'realm-android'

repositories {
    jcenter()
    mavenCentral()
    maven …
Run Code Online (Sandbox Code Playgroud)

android android-studio

5
推荐指数
1
解决办法
1万
查看次数

Android 中数组索引越界

我在 crashlytics 上遇到以下异常。请帮我解决这个问题

Fatal Exception: java.lang.ArrayIndexOutOfBoundsException
length=3; index=3
android.util.ContainerHelpers.binarySearch (ContainerHelpers.java:47)
android.util.LongSparseArray.get (LongSparseArray.java:113)
android.util.LongSparseArray.get (LongSparseArray.java:104)
android.graphics.Typeface.create (Typeface.java:177)
arrow_right
android.support.v4.graphics.TypefaceCompatApi24Impl.createFromFontInfo (Unknown Source)
android.support.v4.graphics.TypefaceCompat.createFromFontInfo (Unknown Source)
android.support.v4.provider.FontsContractCompat.buildTypeface (Unknown Source)
android.support.v4.provider.FontsContractCompat$4.run (Unknown Source)
android.os.Handler.handleCallback (Handler.java:761)
android.os.Handler.dispatchMessage (Handler.java:98)
android.os.Looper.loop (Looper.java:156)
android.os.HandlerThread.run (HandlerThread.java:61)
Run Code Online (Sandbox Code Playgroud)

我认为这个问题与android中的typeFace有关,如上面的异常中所写

"android.support.v4.graphics.TypefaceCompatApi24Impl.createFromFontInfo (Unknown Source)"
Run Code Online (Sandbox Code Playgroud)

我正在使用以下类来设置文本字体。请看下面的课程。

Fatal Exception: java.lang.ArrayIndexOutOfBoundsException
length=3; index=3
android.util.ContainerHelpers.binarySearch (ContainerHelpers.java:47)
android.util.LongSparseArray.get (LongSparseArray.java:113)
android.util.LongSparseArray.get (LongSparseArray.java:104)
android.graphics.Typeface.create (Typeface.java:177)
arrow_right
android.support.v4.graphics.TypefaceCompatApi24Impl.createFromFontInfo (Unknown Source)
android.support.v4.graphics.TypefaceCompat.createFromFontInfo (Unknown Source)
android.support.v4.provider.FontsContractCompat.buildTypeface (Unknown Source)
android.support.v4.provider.FontsContractCompat$4.run (Unknown Source)
android.os.Handler.handleCallback (Handler.java:761)
android.os.Handler.dispatchMessage (Handler.java:98)
android.os.Looper.loop (Looper.java:156)
android.os.HandlerThread.run (HandlerThread.java:61)
Run Code Online (Sandbox Code Playgroud)

android

5
推荐指数
1
解决办法
1316
查看次数