小编Pix*_*xel的帖子

使用PocketSphinx识别多个关键字

我已经安装了PocketSphinx演示版,它在Ubuntu和Eclipse下工作正常,但是尽管我尝试了,但我无法弄清楚如何添加多个单词的识别.

我想要的只是代码识别单个单词,然后我可以switch()在代码中,例如"向上","向下","向左","向右".我不想识别句子,只想单个单词.

对此有任何帮助将不胜感激.我发现其他用户有类似的问题,但到目前为止还没有人知道答案.


令我困惑的一件事是为什么我们需要使用"唤醒"常数?

private static final String KWS_SEARCH = "wakeup";
private static final String KEYPHRASE = "oh mighty computer";
.
.
.
recognizer.addKeyphraseSearch(KWS_SEARCH, KEYPHRASE);
Run Code Online (Sandbox Code Playgroud)

什么wakeup与任何事情有关?


我已经取得了一些进展(?):使用addGrammarSearch我能够使用一个.gram文件列出我的单词,例如up,down,left,right,forwards,backwards,如果我说的都是那些特定的单词,这似乎很有效.但是,任何其他单词都会导致系统与所述的"最近"单词相称.理想情况下,如果所说的单词不在.gram文件中,我不希望发生识别...

android speech-recognition cmusphinx

17
推荐指数
2
解决办法
2万
查看次数

drawBitmapMesh如何在android画布中工作

我想在矩形上绘制一个位图.我使用以下值:

    this.meshWidth = 1;
    this.meshHeight = 1;
    this.verts = new float[8];
    this.points[0].x = (float)(this.getWidth()/4);
    this.points[0].y = (float)(this.getHeight()/4);
    this.points[1].x = (float)(this.points[0].x+this.getWidth()/2);
    this.points[1].y = (float)(this.points[0].y);
    this.points[2].x = (float)(this.points[0].x);
    this.points[2].y = (float)(this.points[0].y+this.getHeight()/2);
    this.points[3].x = (float)(this.points[1].x);
    this.points[3].y = (float)(this.points[2].y);
Run Code Online (Sandbox Code Playgroud)

points数组是我的顶点数组.

我的onDraw方法

public void onDraw(Canvas canvas){
    //canvas.drawBitmap(bitmap, 20,20, null);
    Paint paint = new Paint();
    paint.setColor(Color.BLUE);
    canvas.drawLine(this.points[0].x, this.points[0].y, this.points[1].x, this.points[1].y, paint);
    canvas.drawLine(this.points[1].x, this.points[1].y, this.points[3].x, this.points[3].y, paint);
    canvas.drawLine(this.points[3].x, this.points[3].y, this.points[2].x, this.points[2].y, paint);
    canvas.drawLine(this.points[2].x, this.points[2].y, this.points[0].x, this.points[0].y, paint);
    canvas.drawBitmapMesh(this.bitmap, meshWidth, meshHeight, verts, 0, null, 0, null);
}
Run Code Online (Sandbox Code Playgroud)

输出就是这个 …

android canvas

6
推荐指数
2
解决办法
5647
查看次数

关于如何在服务器上验证 Google In App Purchase 购买令牌的说明?

鉴于我的服务器端点已收到与 Google In App Billing 购买相关的购买令牌,我该如何以编程方式对其进行验证并获得对其内容的访问权限?

我已经可以使用以下方法验证 Google登录令牌php

$client = new Google_Client(['client_id' => $client_id]);

$payload = $client->verifyIdToken($token);

if ($payload)
    return $payload['sub'];
Run Code Online (Sandbox Code Playgroud)

但是我将如何使用Google_Client来验证购买令牌并访问其内容。

它真的只是GET下面的 Ruby 示例一样将 a 发送到 Google 服务器的情况吗?

或者他们是Google_Client我应该调用的特定命令?

我开始认为这是在php使用中复制提到的 Ruby 代码OAuth2或其他东西的情况,因为 Google Docs 确实说一旦服务器拥有购买令牌:

使用 Google Play Developer API 的 Subscriptions 和 In-App Purchases 部分执行 GET 请求以从 Google Play 检索购买详细信息(Purchases.products 用于一次性产品购买或 Purchases.subscriptions 用于订阅)。GET 请求包括应用程序包名称、产品 ID 和令牌(购买令牌)。

如果可能的话只是想澄清一下?谢谢。

google-api-php-client android-inapp-purchase

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

Java引用变量

我知道Java不允许使用C++指针.但是,我听说过一些关于引用的东西(大概也类似于C++).我的问题涉及以下问题:

我有一个类"A",比如,我在内存中实例化(使用new),我希望根据我的选择将这些类"链接"到另一个.在C++中,我只有一个类A指针的向量(在类A中定义),我向其中添加了指向要连接的类AI的实例的指针.这基本上就像在内存中构建全向图(或单向,具体取决于我构建链接的方式)

我的问题是我能用优雅的方式在Java中做到这一点,以及如何做到这一点?我猜它与引用有关.对于这个问题,指针似乎是一个简单的解决方案,但我是Java的新手并且学习如何在没有指针的情况下做这些事情.我不确定如何定义引用.在C++中,我会使用A*mypointer = new A();

谢谢,

java pointers pass-by-reference

3
推荐指数
1
解决办法
372
查看次数

ActionListener调用阻止MouseClick事件

我有一个带有MenuItem"maddbound3"的窗口,其中包含以下ActionListener:

maddbound3.addActionListener
(
    new ActionListener()
    {
        public void actionPerformed(ActionEvent e)
        { 
            menu_addbound3();
        } 
    }
);
Run Code Online (Sandbox Code Playgroud)

单击菜单时,此侦听器调用下面的menu_addbound3():

void menu_addbound3()
{
    while(getEditMode() != EditMode.NONE)
    {
        System.out.println("!... " + getEditMode());

        synchronized(this)
        {
            try
            {
                wait();
            }
            catch(InterruptedException e)
            {
                e.printStackTrace();
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

MouseClicked事件改变编辑模式的值并发出notifyAll(),以便while循环退出.但是,测试表明,当系统通过while循环运行时,单击鼠标时不会发生MouseClicked事件.

ActionListener是否阻止了MouseClicked事件?我该如何解决这个问题?

谢谢

java swing actionlistener mouseclick-event

3
推荐指数
1
解决办法
2306
查看次数

Dependency Walker 在函数名后显示@x

我正在为一个软件编写一个插件 DLL,该 DLL 编译得很好,但该软件无法访问 DLL 的功能。我确实知道该软件知道 DLL。

当我在 Dependency Walker 中检查 DLL 时,函数名称已@x附加到末尾,例如Foo@4,这意味着 Foo 有 1 个参数(函数参数的数量乘以 4)。

但是,当我检查已知可以工作的插件 DLL 时,该 DLL 函数没有@x附加到末尾。由于已知此 DLL 可以工作而我的 DLL 无法工作,因此我认为这与它有关。

运行的 DLL 使用__declspec(dllexport) __stdcall其导出的函数。请注意,我只有好的 DLL 的源代码。我知道它有效,因为我有 DLL 文件本身,我没有自己编译它。据我所知,这是在 Borland IDE 中编译的,所以这可能是 Eclipse 特定的问题?

有谁知道可能有什么问题和/或我如何使 DLL 正常工作?

编辑我应该指出我使用的是带有 MINGW 编译器的 Eclipse IDE。

c c++ dll dllexport

2
推荐指数
1
解决办法
749
查看次数

我应该使用GoogleAuthUtil.getToken(...)吗?

背景:

我需要在我的服务器后端进行身份验证,因此我知道客户端是正版的.在我的Android游戏中,我连接到Games.APIvia GoogleApiClient.

我只想登录一次,这是我想做的Games.API,因为这给了我很多好处(Google Play游戏排行榜,成就等)

我已经能够获得授权令牌GoogleAuthUtil.getToken(...),我可以在登录后使用该令牌Games.API,这似乎给了我一个令牌.目前很好.

Google表示这不安全,并表示我应该转而使用ID令牌流程.但是,据我所知,这种方法需要我使用

Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient);
startActivityForResult(signInIntent, RC_SIGN_IN);
Run Code Online (Sandbox Code Playgroud)

这意味着对Games.API进行额外的登录.此外,不可能都相同的!addApiGames.API Auth.GOOGLE_SIGN_IN_APIGoogleApiClient

好的,所以升级到最新的google-play-services(至少是r29),我可以使用Games.APIGames.getGamesServerAuthCode(...)来获取服务器的身份验证令牌.但这有两个问题:(1)它需要Android 6.0或更高版本才能阻挡80%的市场,(2)它已被弃用!


题:

我应该使用GoogleAuthUtil.getToken(...)与否,如果没有,我的选择是什么,我只想使用Games.API

通过登录我的意思是向用户提供登录视觉效果.只要用户不必与登录进行交互,我不介意签署其他内容...


注意:

我刚开始时最初问过这个问题.目前的问题有希望澄清情况.

android authorization web-services google-play-services

2
推荐指数
1
解决办法
3362
查看次数

线程安全保护

我了解publicprivate关键字的基本知识(我仍然不确定是什么protected

我有一个关于“保护数据成员以确保线程安全”的问题。

例如,假设我有一个类MyClass扩展Thread和属于这个类是私人称为数据成员MyDataMember。假设这个数据成员有公共访问器和设置器函数,确保同步数据成员。

现在,从“外部”的角度来看,这一切都很好,因为其他线程只能在正确同步时设置和检索数据成员。但是,怎么样等功能之内 MyClass?假设我 MyClass调用中还有另一个函数DoSomething。我知道我不应该尝试MyDataMember直接访问,但我可能会不时忘记调用访问器/设置器方法并直接访问/设置数据成员。

我的问题是:是否有一个关键字可以用来声明函数成员对某些数据成员的独占访问?这样,如果我“不小心”从没有独占访问权的方法中直接访问数据成员,则会发生错误。我只是认为这会使开发过程中的事情变得更安全(至少对我而言!)

java multithreading

0
推荐指数
1
解决办法
1670
查看次数