gpt4 book ai didi

java - 将 Android 语音识别文本发送到另一个 Activity

转载 作者:行者123 更新时间:2023-12-01 17:25:04 24 4
gpt4 key购买 nike

我目前正在尝试在我的 Android 应用程序中使用语音识别。本质上,我有一个主要 Activity 、一个加载 Activity 和一个文本显示 Activity 。当按下主 Activity 中的按钮时,麦克风将打开,然后转换到加载 Activity ,其中显示一个带有弹跳点的 gif,表明您正在对着麦克风讲话。经过一定时间的静默后,它将文本发送到测试显示 Activity 。现在我将其设置为我的主要 Activity 有一个按钮,按下该按钮会将您发送到加载屏幕。我假设激活语音识别的代码将进入主要 Activity ,但我不确定如何将收集的数据发送到我的文本显示 Activity 。如果有任何不清楚的地方,请告诉我。下面给出了我的 Activity 代码。

主要 Activity

package app.test;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageButton;
public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getSupportActionBar().hide();

ImageButton button = (ImageButton) findViewById(R.id.imageButton2);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
openLoading();
}
});
}

public void openLoading(){
Intent intent = new Intent(this, Loading.class);
startActivity(intent);
}


}

加载 Activity

package app.test;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.speech.RecognizerIntent;
import android.view.View;
import android.widget.ImageView;
import android.widget.Toast;

import com.bumptech.glide.Glide;

import java.util.Locale;

public class Loading extends AppCompatActivity {
private ImageView gifImageView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_loading);
getSupportActionBar().hide();

gifImageView=findViewById(R.id.imageView2);

Glide.with(Loading.this)
.load(R.drawable.loading)
.into(gifImageView);
}

@Override
public void onBackPressed() {

}
}

文本显示 Activity

package app.test;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.widget.TextView;

import org.w3c.dom.Text;

public class Tweet extends AppCompatActivity {
private TextView txtResult;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tweet);
txtResult = (TextView) findViewById(R.id.textView);
}

}

最佳答案

通过Application类共享数据,或者,您可以将数据保存到Bundle中并调用

Bundle b = new Bundle();
b.putExtra("data", {your data collection});
intent.putExtra("b", b);
startActivity(intent);

因此您可以在此处检索数据

protected void onCreate(Bundle b) {
Intent dataIntent = getIntent();
if (dataIntent != null) {
Bundle b = dataIntent.getExtra("b");
//...
}
}

希望能给大家一些帮助

关于java - 将 Android 语音识别文本发送到另一个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61222354/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com