Unity获取Android平台音量
https://www.cnblogs.com/Jason-c/p/7766021.html
http://blog.csdn.net/tdstds/article/details/25533291
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class AndroidAudio : MonoBehaviour
{
private const string currentVolume = "getStreamVolume"; //当前音量
private const string maxVolume = "getStreamMaxVolume"; //最大音量
private const int STREAM_VOICE_CALL = 0; // 通话音量
private const int STREAM_SYSTEM = 1; // 系统音量
private const int STREAM_RING = 2; // 铃声音量
private const int STREAM_MUSIC = 3; // 媒体音量
private const int STREAM_ALARM = 4; // 警报音量
private const int STREAM_NOTIFICATION = 5; // 窗口顶部状态栏 Notification
private const int STREAM_DTMF = 8; // 双音多频
private const int ADJUST_LOWER = 9; // 双音多频
private static AndroidJavaObject audioManager;
//创建几个 "3D Text" 用于接收音量值
public Text STREAM_VOICE_CALL_Text;
public Text STREAM_SYSTEM_Text;
public Text STREAM_RING_Text;
public Text STREAM_MUSIC_Text;
public Text STREAM_ALARM_Text;
public Text STREAM_NOTIFICATION_Text;
public Text STREAM_DTMF_Text;
public Text MaxSTREAM_VOICE_CALL_Text;
public Text MaxSTREAM_SYSTEM_Text;
public Text MaxSTREAM_RING_Text;
public Text MaxSTREAM_MUSIC_Text;
public Text MaxSTREAM_ALARM_Text;
public Text MaxSTREAM_NOTIFICATION_Text;
public Text MaxSTREAM_DTMF_Text;
#if UNITY_ANDROID && !UNITY_EDITOR
void Awake()
{
AndroidJavaClass UnityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject currentActivity = UnityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
audioManager = currentActivity.Call<AndroidJavaObject>("getSystemService", new AndroidJavaObject("java.lang.String", "audio"));
}
void Update()
{
STREAM_VOICE_CALL_Text.text = audioManager.Call<int>(currentVolume, STREAM_VOICE_CALL).ToString();
STREAM_SYSTEM_Text.text = audioManager.Call<int>(currentVolume, STREAM_SYSTEM).ToString();
STREAM_RING_Text.text = audioManager.Call<int>(currentVolume, STREAM_RING).ToString();
STREAM_MUSIC_Text.text = audioManager.Call<int>(currentVolume, STREAM_MUSIC).ToString();
STREAM_ALARM_Text.text = audioManager.Call<int>(currentVolume, STREAM_ALARM).ToString();
STREAM_NOTIFICATION_Text.text = audioManager.Call<int>(currentVolume, STREAM_NOTIFICATION).ToString();
STREAM_DTMF_Text.text = audioManager.Call<int>(currentVolume, STREAM_DTMF).ToString();
MaxSTREAM_VOICE_CALL_Text.text = audioManager.Call<int>(maxVolume, STREAM_VOICE_CALL).ToString();
MaxSTREAM_SYSTEM_Text.text = audioManager.Call<int>(maxVolume, STREAM_SYSTEM).ToString();
MaxSTREAM_RING_Text.text = audioManager.Call<int>(maxVolume, STREAM_RING).ToString();
MaxSTREAM_MUSIC_Text.text = audioManager.Call<int>(maxVolume, STREAM_MUSIC).ToString();
MaxSTREAM_ALARM_Text.text = audioManager.Call<int>(maxVolume, STREAM_ALARM).ToString();
MaxSTREAM_NOTIFICATION_Text.text = audioManager.Call<int>(maxVolume, STREAM_NOTIFICATION).ToString();
MaxSTREAM_DTMF_Text.text = audioManager.Call<int>(maxVolume, STREAM_DTMF).ToString();
}
#endif
}
关注公众号
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
解决Linux无法打开android模拟器问题
笔者最近重新安装了系统(deepin),但随之带来了一个问题,就是无法创建Android模拟器。其实这个问题我倒是在之前遇到过2次,很好解决,删除'yourPath'/Sdk/emulator/lib64/libstdc++.so就行了。 也可以链接一个本机的libstdc++: ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 'yourPath'/Sdk/emulator/lib64//libstdc++.so.6 但是依然打不开哦,打开闪退了。错误如下: Emulator:Process finished with exit code 139(Interrupted by signal 11:sigsegv) 其实网上给出的大部分答案都是修改图形处理,由Automatic改成Sowftware。答案1答案2答案3 更至Sowftware问题其实是得到了解决,毕竟不会再闪退。但Software模式有个问题,就是太卡了,而且总莫名重启。这是我忍不了的。但是网上真的很能找到答案,倒是我直播间的一位小同志提醒了我,我感觉可能是显卡的问题。我需要...
-
下一篇
极光推送(二)接收通知
步骤(分为两步) 一.设置通知栏样式(如果不设置则默认使用自带的),这里官方给了三种方式: 1.基础(定制声音、震动、闪灯等 Notification 样式): BasicPushNotificationBuilder builder = new BasicPushNotificationBuilder(MainActivity.this); builder.statusBarDrawable = R.drawable.jpush_notification_icon; builder.notificationFlags = Notification.FLAG_AUTO_CANCEL | Notification.FLAG_SHOW_LIGHTS; //设置为自动消失和呼吸灯闪烁 builder.notificationDefaults = Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE | Notification.DEFAULT_LIGHTS; // 设置为铃声、震动、呼吸灯闪烁都要 //注意这里的 1 ,以后会有用...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- MySQL数据库中FOR UPDATE的使用
- Linux系统CentOS6、CentOS7手动修改IP地址
- SpringBoot2全家桶,快速入门学习开发网站教程

微信收款码
支付宝收款码