美文网首页
Android 设置手机铃声

Android 设置手机铃声

作者: 清朝公主大清正黄旗 | 来源:发表于2021-11-18 16:41 被阅读0次

    直接设置铃声:

    // ringtongVal : 卡1 或者卡2 
    List<Integer> ringtongIntVals = getRingTongTypeArrayWithReflect();
    ringtongVal[0] 、或者:ringtongVal[1]
    RingtoneManager.setActualDefaultRingtoneUri(context, ringtongVal, uri);
    

    获取卡几的方法:

        /**
         * @return
         */
        private static List<Integer> getRingTongTypeArrayWithReflect() {
            List<Integer> ringtongIntVals = new ArrayList<>();
            //默认系统的卡1
            ringtongIntVals.add(RingtoneManager.TYPE_RINGTONE);
            ringtongIntVals.add(8);
            try {
                Class clazz = Class.forName("android.media.RingtoneManager");
                Field[] fields1 = clazz.getFields();
                for (Field field : fields1) {
                    field.setAccessible(true);
                    if (!TextUtils.isEmpty(field.getName()) && field.getName().startsWith("TYPE_RINGTONE") && !field.getName().equals("TYPE_RINGTONE")) {
                        Log.d("getRingTong2 find ", field.getName() + "=>" + field.get(clazz));
                        ringtongIntVals.add(Integer.valueOf(field.get(clazz).toString()));
                    }
                    Log.d("getRingTong2=>", field.getName() + "=>" + field.get(clazz));
                }
    
            } catch (Exception e) {
                e.printStackTrace();
            }
            return ringtongIntVals;
        }
    

    相关文章

      网友评论

          本文标题:Android 设置手机铃声

          本文链接:https://www.haomeiwen.com/subject/tondtrtx.html