我需要使用 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/