RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-32544

sanu's questions

Martin Hope
sanu
Asked: 2020-06-25 06:07:07 +0000 UTC

为什么三星 Galaxy S8 无法通话录音?

  • 2
private fun getRecorder(absoluteOutFilePath: String, audioSource: Int): MediaRecorder {
        val mediaRecorder = MediaRecorder()
        mediaRecorder.setAudioSource(audioSource)
        mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4)
        mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC)
        mediaRecorder.setAudioEncodingBitRate(64000)
        mediaRecorder.setAudioSamplingRate(16000)
        audioManager.mode = AudioManager.MODE_IN_CALL
        audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL, audioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL), 0)
        mediaRecorder.setOutputFile(absoluteOutFilePath)
        mediaRecorder.prepare()
        mediaRecorder.start()
        return mediaRecorder
    }

所以我尝试记录对话

val mediaRecorder = try {
                getRecorder(absoluteOutFilePath, MediaRecorder.AudioSource.VOICE_CALL)
            }catch (e:Exception){
                Log.w("Can't start record with AS VOICE_CALL, try set AS MIC")
                getRecorder(absoluteOutFilePath, MediaRecorder.AudioSource.MIC)
            }

一切正常,异常不会下降。但是,当我用 SGS8 录制时,它被使用了MIC,因为。当VOICE_CALL抛出异常时:java.lang.RuntimeException: start failed。

我发现三星设备上的通话录音似乎不适用于所有国家/地区。同时,PlayGoogle 中有各种应用程序(例如,这个)可以完美地记录这台设备上的对话。解释如何在此设备和类似设备上正确记录通话,如何绕过此限制?

android
  • 1 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-12-01 16:58:26 +0000 UTC

为什么调试 Angular 应用程序不起作用?

  • 0

我选择 JavaScript Debug,写入本地 url:https://test-app.lan:3009 在 Remote URLs of local 列表中,找到应用程序的根文件夹(node_modules 在那里),我还指定了 URL:https ://test-app .lan:3009

结果,调试器中的控制台是可见的,当加载应用程序模块时,断点被标记为工作,但它不会在它们上停止。事实上,这些黑客都不起作用。

我的想法版本是 2017.3,angular 5.x,typescript 2.6。在其他项目上(不是有角度的,而是用打字稿写的),没有这样的问题。可能是什么问题呢?有人遇到过类似的吗?

ps 起初我认为这可能是模块的延迟加载 - 但不是,主模块(app.module)也没有调试。

intellij-idea
  • 1 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-04-27 00:23:07 +0000 UTC

相当于 $(document).on('click') for android?

  • 0

在 android 中是否可以在元素出现之前设置事件处理程序?例如,把OnClickListener它放在包装器容器上,然后听那里的所有点击,即 它总是会检查被点击元素的 id。例如在 javascript 中你可以:

$(document.body).on('click','#myElem',handler)

这里的处理程序挂在body网页节点上,它会通过单击带有idequal的元素来触发,与myElem创建此类元素的时间无关,在安装处理程序之前或之后。这可以在android中完成吗?

android
  • 1 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-03-16 18:30:06 +0000 UTC

是否可以在 android 中为标准视图设置自定义属性?

  • 1

比方说,动态地从从服务器接收到的 json - 列表是俄罗斯化的。我想在单击 Relativelayout 线程时发出 http 请求。为此,我想为这个 Relativelayout'y 设置一些属性,它将包含我需要的 url(就像在 html 中标签<a>有href)。在点击处理程序中,我读取被点击元素的属性并发出请求。

如果使用自定义视图,我只找到有关情况的信息。但我想知道是否可以使用标准视图设置自定义属性?

android
  • 1 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-02-10 20:08:46 +0000 UTC

运行 Gitlab runner 时出错

  • 1

有一个运行器在推送时工作,它必须执行位于 gitlab 本身所在的服务器上的脚本。

该脚本如下所示:

#!/usr/bin/env bash

forever stop "myproject"

cd /myproject

export NODE_PATH=.
export NODE_ENV=qa
export NODE_INIT_TARGET=build

node --use_strict bin/init

forever start -a --uid "myproject" --minUptime 20000 --spinSleepTime 20000 bin/start --use_strict

那些。它只需要运行一个 js 脚本,该脚本首先从 forever.js 中删除进程(停止应用程序),构建前端,然后将进程添加到 forever.js(启动应用程序)。因此,如果您在控制台中动手操作 - 一切正常。但是跑步者给出了以下错误:

Running with gitlab-ci-multi-runner 1.10.4 (b32125f)
Using Shell executor...
Running on server...
Fetching changes...
HEAD is now at 5553b27 Merge branch 'dev' into 'master'
Checking out ed68665c as dev...
Skipping Git submodules setup
$ /myproject/myScript.sh
/myproject/myScript.sh: строка 3: forever: команда не найдена
/myproject/myScript.sh: строка 11: node: команда не найдена
/myproject/myScript.sh: строка 13: forever: команда не найдена
ERROR: Build failed: exit status 1

可能是什么原因?

root@server:/node_data/csgo-forecast/bin# env
PATH=/home/sanu/.nvm/versions/node/v6.9.5/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

root@server:/node_data/csgo-forecast/bin# sudo -iu gitlab-runner bash -c set
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
gitlab
  • 1 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-02-10 16:50:55 +0000 UTC

Gitlab 可以在服务器上运行 bash 脚本吗?

  • 3

一般来说,任务简单易懂。有必要在推送到 master 分支时,在服务器上启动一个 bash 脚本,而在推送到 qa 分支时,另一个。这可以使用 gitlab 完成吗?(!重要 - 不是 webhook)。如果是这样,如何?描述要做什么。如果没有,怎么办?

gitlab
  • 2 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-12-15 05:47:11 +0000 UTC

如何剪切数组中的所有出现?

  • 0

假设有一行:

Текст $var{m1}, еще текст + $var{m2}, еще текст $var{m3}

目的:在输出端得到这样一个数组['m1','m2','m2']

我试着这样做:

str.replace(/\$var\{.{0,}\}/g,()=>{
        console.log(arguments);
});

但arguments它没有得到你需要的。

如何正确切割数组中的所有事件?

javascript
  • 2 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-11-23 18:05:29 +0000 UTC

如何不使用 systemjs 作为脚本加载器一次加载所有内容?

  • 0

假设站点上有很多部分,每个部分负责特定页面的某个类处理器。

当我们转到任何页面时,都会触发初始化路由器的主文件,let router = new Router();它确定在哪个页面上需要初始化哪个处理程序类(即创建其实例并可以执行某些方法)。它看起来像这样:

import {HomePageController} from "../modules/homePageController";
import {page1Controller} from "../modules/page1Controller";
import {page2Controller} from "../modules/page2Controller";
import {page3Controller} from "../modules/page3Controller";
import {page4Controller} from "../modules/page4Controller";

export class RouterMap{

    constructor(){
        return this;
    }

    protected routes = {
        "/:hl/$": {
            controller: HomePageController,
            handlerMethod: "onInit",
            onLeaveHandlerMethod: "onLeave"
        },
        "/:hl/p1": {
            controller: page1Controller,
            handlerMethod: "onInit",
            onLeaveHandlerMethod: "onLeave"
        },
        "/:hl/p2": {
            controller: page2Controller,
            handlerMethod: "onInit",
            onLeaveHandlerMethod: "onLeave"
        },
        "/:hl/p3": {
            controller: page3Controller,
            handlerMethod: "onInit"
        },
        "/:hl/p4": {
            controller: page4Controller,
            handlerMethod: "onInit",
            route:{
                "/:id": {
                    handlerMethod: "onInit"
                }
            }
        }
    };
}

问题的本质是,当加载任何页面时,systemjs 将加载我们导入到RouterMap上面显示的所有内容,以及导入到每个处理程序类中的所有RouterMap内容(HomePageController、page1Controller、page2Controller、page3Controller、page4Controller)以及他们每个人都进口了什么。这非常糟糕,如果项目很大并且总导入大约 400 个文件,例如(systemjs 总是一次加载它们),并且在特定页面上导入时使用的文件不超过 10 个怎么办?如何让 systemjs 以不同的方式工作,而不是加载我们不会使用的东西?我怀疑你需要重写路由器,但我仍然不明白如何,因为我们不能动态(隐式)导入类,只能显式导入?或者我错了?

javascript
  • 1 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-09-26 16:43:19 +0000 UTC

TypeScript + jQuery:关于从事件处理程序访问类属性 [重复]

  • 1
这个问题已经在这里得到回答:
呼叫上下文丢失 (5 个答案)
5 年前关闭。

在我最近开始的项目中,我决定使用 TypeScript + jQuery。我使用 systemJS 设置了脚本的动态加载,一切都很酷。这是第一个耙子,我有一个带有菜单的菜单类、detailsMenuContainer、状态属性,这些属性在构造函数中填充,并且处理程序被挂起——它们在处理程序内部变得不可用,然后我不得不将它们设为静态:

export class Menu{

    private static menu;
    private static detailsMenuContainer;
    private static state :boolean = false;

    constructor(){
        Menu.menu = $(MENU);
        Menu.detailsMenuContainer = $(DETAILS_MENU_CONTAINER);
        fn.setOnDocumentListener('mousemove',MENU_EVENT_NAME,null,this.mousePosChecker);
    }

    public static showMenu(){
        Menu.state = true;
        Menu.menu.prop('class',ACTIVE_MENU_STATE_CLASS);
        Menu.detailsMenuContainer.prop('class',ACTIVE_MENU_STATE_CLASS);
    }

    public static hideMenu(){
        Menu.state = false;
        Menu.menu.prop('class',INACTIVE_MENU_STATE_CLASS);
        Menu.detailsMenuContainer.prop('class',INACTIVE_MENU_STATE_CLASS);
    }

    private mousePosChecker(e){
        let posX = e.clientX, posY = e.clientY, controlStateSize = CONTROL_STATE_INACTIVE;
        if(Menu.state) controlStateSize = CONTROL_STATE_ACTIVE;

        if(posY > CONTROL_TOP_STATE && posX < controlStateSize && !Menu.state){
            Menu.showMenu();
        }else if((posY < CONTROL_TOP_STATE || posX > controlStateSize) && Menu.state){
            Menu.hideMenu();
        }
    }
}

那些。如果他们不是static,那么他们将在处理程序中undefined!

向我解释为什么会这样?有什么办法可以使它们成为非静态的吗?很不方便!!!

javascript
  • 1 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-09-16 06:12:58 +0000 UTC

开发JSON API时如何正确存储session?

  • 4

我们通常将session id 存储在浏览器的cockie 中。但是假设我想在 ios/android 移动应用程序中使用我的 API,我将在应用程序的内存中存储一​​个 cookie,然后将其插入到应用程序的每个请求中。但这有多正确呢?有什么提示吗?

json
  • 2 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-08-23 04:05:10 +0000 UTC

如何在java中正确实现回调?

  • 3

最近开始自学Android,java其实之前写的都是.js nodeJS,时间久了就习惯js了。

所以,在学习的过程中,我决定写一个单独的类来发送请求,并且作为错误或成功的结果,它会执行我们发送这个请求的类的相应方法.

有一个类MainActivity,通过单击按钮,我们向服务器发送请求并将响应插入到TextView. 现在我已经实现了这样的回调:

public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener {

protected void onCreate(Bundle savedInstanceState) {


sendButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        DoRequestClass doRequestClass = new DoRequestClass(){

                    @Override
                    public void onOK(JSONObject response) {
                        successReq(response);
                    }

                    @Override
                    public void onError(VolleyError error) {
                        errorReq(error);
                    }
                };
            doRequestClass.execute("http://myserver.local", MainActivity.this);
        }
    });


public void successReq(JSONObject response){
    txtDisplay.setText("Response => "+response.toString());
}

public void errorReq(VolleyError error){
    txtDisplay.setText("Error => "+error.toString());
}

// other methods

这样一个抽象类供测试DoRequestClass

public abstract class DoRequestClass implements DoRequestInterface {

    @Override
    public void execute(String url, Context context) {
        RequestQueue queue = Volley.newRequestQueue(context);

        JsonObjectRequest jsObjRequest = new JsonObjectRequest(Request.Method.GET, url, null, new Response.Listener<JSONObject>() {

            @Override
            public void onResponse(JSONObject response) {
                DoRequestClass.this.onOK(response);
            }

        }, new Response.ErrorListener() {

            @Override
            public void onErrorResponse(VolleyError error) {
                DoRequestClass.this.onError(error);
            }

        });

        queue.add(jsObjRequest);
    }
}

带接口DoRequestInterface

interface DoRequestInterface {
    void execute(String url, Context context);

    void onOK(JSONObject response);

    void onError(VolleyError error);
}

上面描述的一切都有效,但是否有可能以某种方式以某种方式传输successReq它errorReq,DoRequestClass就像我们在 上所做的那样javascript,关于我的意思,关于期望的结果,看看我希望它们如何被大致传输:

sendButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                DoRequestClass doRequestClass = new DoRequestClass();
                doRequestClass.setSuccessCallback(successReq);
                doRequestClass.setErrorCallback(errorReq);
                doRequestClass.execute("http://lessons.flexiblejs.ru/test.php", MainActivity.this);
            }
        });

正如您从上面的代码中了解到的,setSuccessCallback这些setErrorCallback方法将告诉类在成功或不成功的请求后执行DoRequestClass哪些类方法。MainActivity

这个或类似的在 javascript 中可以正常工作,但这样的 java 代码将不起作用。问题是如何创造这样或接近它的东西?这有可能吗?最重要的是不要像我的工作示例onOK和onError.

如果可能的话,我请你给出最详细的答案和解释,因为。我对 Java 的了解一点也不多。

java
  • 1 个回答
  • 10 Views
Martin Hope
sanu
Asked: 2020-08-08 20:19:30 +0000 UTC

如何正确组织树形结构中子评论的提取?

  • 2

我发表评论,它们应该是树状的,并且只有一层嵌套(请注意 YouTube 上的评论)。

表结构

CREATE TABLE `_fx_comments` ( 
`id` int(11) NOT NULL AUTO_INCREMENT, 
`pid` int(11) DEFAULT NULL, 
`sender` int(11) NOT NULL, 
`recipient` int(11) DEFAULT NULL, 
`target` varchar(150) NOT NULL, 
`eid` int(11) NOT NULL, 
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, 
`text` text, 
`rateTrue` int(7) NOT NULL DEFAULT '0', 
`rateFalse` int(7) NOT NULL DEFAULT '0', 
`resource` text, 
`approve` int(1) NOT NULL DEFAULT '1', 
`isDel` int(1) NOT NULL DEFAULT '1', 
PRIMARY KEY (`id`), 
KEY `pid` (`pid`), 
KEY `sender` (`sender`), 
KEY `recipient` (`recipient`), 
KEY `target` (`target`), 
KEY `eid` (`eid`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

eid- 评论所属元素的pidid, - 父评论的id

我需要解决的主要任务是提取,比方说,最后 10 条评论有pid IS NOT NULL,并以某种方式查看当前评论是否有孩子,然后提取它们(两个孩子是最后添加的)。

但是现在我们需要以某种方式提取最后两个孩子.....有一个使用 NESTED SET 的想法,但我不知道如何在我的示例中应用它。

更新:

目前,有这样一个糟糕的解决问题的方法:

SELECT fx_cmt.id,fx_cmt.pid,fx_cmt.eid,fx_cmt.sender,fx_cmt.recipient,fx_cmt.date,fx_cmt.text,fx_cmt.rateTrue,fx_cmt.rateFalse,fx_cmt.resource,
        fx_u.fx_login AS senderLogin, fx_u2.fx_login AS recipientLogin,
        (SELECT COUNT(fx_cmt_count.id)  FROM _fx_comments fx_cmt_count WHERE fx_cmt_count.pid = fx_cmt.id) AS countChilds,

         fx_cmt_l.id AS lcId, fx_cmt_l.pid AS lcPid, fx_cmt_l.eid AS lcEid, fx_cmt_l.sender AS lcSender, fx_cmt_l.recipient AS lcRecipient, fx_cmt_l.date AS lcDate,
             fx_cmt_l.text AS lcText, fx_cmt_l.rateTrue AS lcRateTrue, fx_cmt_l.rateFalse AS lcRateFalse, fx_cmt_l.resource AS lcResource,

         fx_cmt_pl.id AS plcId, fx_cmt_pl.pid AS plcPid, fx_cmt_pl.eid AS plcEid, fx_cmt_pl.sender AS plcSender, fx_cmt_pl.recipient AS plcRecipient, fx_cmt_pl.date AS plcDate,
             fx_cmt_pl.text AS plcText, fx_cmt_pl.rateTrue AS plcRateTrue, fx_cmt_pl.rateFalse AS plcRateFalse, fx_cmt_pl.resource AS plcResource,

         fx_u_l.fx_login AS lcSenderLogin, fx_u2_l.fx_login AS lcRecipientLogin,
         fx_u_pl.fx_login AS plcSenderLogin, fx_u2_pl.fx_login AS plcRecipientLogin

FROM _fx_comments AS fx_cmt 

INNER JOIN _fx_users fx_u ON fx_u.id = fx_cmt.sender
LEFT JOIN _fx_users fx_u2 ON fx_u2.id = fx_cmt.recipient

LEFT JOIN _fx_comments fx_cmt_l ON fx_cmt_l.id = (SELECT id FROM _fx_comments AS c WHERE c.pid = fx_cmt.id  ORDER BY date DESC LIMIT 0,1)
LEFT JOIN _fx_comments fx_cmt_pl ON fx_cmt_pl.id = (SELECT id FROM _fx_comments AS c WHERE c.pid = fx_cmt.id  ORDER BY date DESC LIMIT 1,1)

LEFT JOIN _fx_users fx_u_l ON fx_u_l.id = fx_cmt_l.sender
LEFT JOIN _fx_users fx_u2_l ON fx_u2_l.id = fx_cmt_l.recipient
LEFT JOIN _fx_users fx_u_pl ON fx_u_pl.id = fx_cmt_pl.sender
LEFT JOIN _fx_users fx_u2_pl ON fx_u2_pl.id = fx_cmt_pl.recipient

WHERE fx_cmt.eid = 1

但是这个选项虽然有效,但很糟糕,因此需要更正确的解决方案....

mysql
  • 2 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5