如何通过长时间点击分享声音?
我试图从我的原始文件夹共享几个音频到另一个应用程序(whatsapp,gmail等)。通过一个按钮,如果我点击它的音频声音,并且如果我保持按下,我想要共享选项。正如我在互联网上看到的,共享文件的方式是创建一个Intent,但是在按住方法内创建它,我在getPackageName中出现错误。我怎么能解决这个问题?我的代码下面部分:如何通过长时间点击分享声音?
final MediaPlayer sound1 = MediaPlayer.create(this, R.raw.cristobalmasgrande); Button button1 =(Button) this.findViewById(R.id.button1);
button1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
sound1.start();
}
});
button1.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
Intent compartirAudio = new Intent(android.content.Intent.ACTION_SEND);
compartirAudio.setType("audio/*");
compartirAudio.putExtra(Intent.EXTRA_STREAM,
Uri.parse("android.resource://" + this.getPackageName() + "/raw/" + araujomio)); //Error on getPackageName()
startActivity(Intent.createChooser(compartirAudio, "Compartir vía"));
return false;
}
});
回答:
在this.getPackageName()
,this
是OnLongClickListener
实例。它没有名为getPackage()
的方法。 您有几种选择,e.g:
Uri.parse("android.resource://" + v.getContext().getPackageName() + "/raw/" + araujomio));
或
Uri.parse("android.resource://" + getApplicationContext.getPackageName() + "/raw/" + araujomio));
以上是 如何通过长时间点击分享声音? 的全部内容, 来源链接: utcz.com/qa/264960.html