android - 使用framework c/c++的funtion来转换android studio

标签 android audio

我需要使用 android.media.MediaPlayer 库的 setParameter 函数。然而,这是一个“私有(private)原生”功能。然后我在一个C++语言框架中找到了这个函数。有没有办法使用这个功能?我想控制 .ts 文件的音轨(左、右、单声道)。

最佳答案

setParameter 是一个隐藏方法。 隐藏方法是方法,它们用@hide注解标记。

您可以通过不同的方式使用隐藏方法。

1.使用反射

如果你真的想使用反射,检索一个 Method 对象:

Method m = YourClass.class.getMethod("method_name",new Class[] { Integer.class }) 
m.invoke(null,123);

在您的情况下(未经测试,可能需要进行一些更改):

Object mp = MediaPlayer.newInstance();
Method m = MediaPlayer.class.getMethod("setParameter",new Class[] { Integer.class,Integer.class }) 
m.invoke(mp,123,123);

2.使用android隐藏API库

https://github.com/anggrayudi/android-hidden-api

使用这个库。

关于android - 使用framework c/c++的funtion来转换android studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50849436/

相关文章:

java - AFreeChart OHLC数据集 : how to remove spaces where no data at date axis?

android - 如果两个 TextView 重叠,则使 TextView 可滚动

javascript - 如何在IE11中使用沿声波图像移动的光标(垂直线)播放作品音频

c++ - 如何从WAV文件中获取采样率?

audio - 在 Livecode 中播放多个声音文件

android - 如何在 Android 应用程序中为三星设备在全屏模式下隐藏软键

android - 相当于 imageView 的文本

java - 返回空指针的处理程序

c - Linux 中 C 的 sound() 和 nosound() 函数?

audio - 2D碰撞和背景音乐XNA 3.1