Android GCM PushNotification - 在应用程序中添加添加自定义声音文件

2024-07-01

我成功收到 GCM 推送通知。现在我想添加自定义声音文件而不是默认声音。我尝试过Uri from

文件:///res/raw/pop.mp3

in

通知.DEFAULT_SOUND;

但没有成功。如果您有更好的解决方案请分享。

My GCMIntentService.java方法代码如下 -

/**
 * Issues a notification to inform the user that server has sent a message.
 */
private static void generateNotification(Context context, String message) {

    System.out.println("Called generateNotification>>>>>>>>>>>>>"+message);
    NotificationManager notificationManager = (NotificationManager) context
            .getSystemService(Context.NOTIFICATION_SERVICE);
    // Notification notification = new Notification(icon, message, when);

    String title = context.getString(R.string.app_name);

    NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
            context)
            .setSmallIcon(R.drawable.app_icon)
            .setContentTitle(title)

            .setStyle(
                    new NotificationCompat.BigTextStyle().bigText(message))
            .setContentText(message);

    Intent notificationIntent = new Intent(context,
            SplashActivity.class);
    PendingIntent intent = PendingIntent.getActivity(context, 0,
            notificationIntent, PendingIntent.FLAG_CANCEL_CURRENT);

    mBuilder.setContentIntent(intent);

    Notification notification = mBuilder.build();
    notification.flags |= Notification.FLAG_AUTO_CANCEL;

    notification.defaults |= Notification.DEFAULT_SOUND;
    notification.defaults |= Notification.DEFAULT_VIBRATE;


    notificationManager.notify(0, notification);



}

要添加自定义声音,请添加此

notification.sound = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.pop);

即在您的代码更改中

notification.defaults |= Notification.DEFAULT_SOUND;
notification.defaults |= Notification.DEFAULT_VIBRATE;

to

notification.sound = Uri.parse("android.resource://" + getPackageName() + "/" +R.raw.pop);
notification.defaults |= Notification.DEFAULT_VIBRATE;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android GCM PushNotification - 在应用程序中添加添加自定义声音文件 的相关文章

  • 在android中绘制单点触摸运动路径

    我正在尝试制作一个绘图应用程序 我想要绘制单点触摸运动路径在 android 中 就像 Swype 键盘的方式一样 因此我想存储每个像素的 x y 坐标将运动路径转化为数据结构 我如何使用 MotionEvent 指针来执行此操作 您可能不
  • 自定义 iOS 推送通知声音

    我一直面临一个问题 我在 iOS 中使用自定义声音实现了推送通知 它是一个 MP3 文件 当我在 iOS 5 中收到推送通知时它播放得很好 但在 iOS4 中 它不播放任何声音 你能帮我解决这个问题吗 代码是这样的 aps badge 10
  • 如果没有连接 USB 电缆,ADB over TCP/IP 无法工作

    我可以使用 USB 电缆通过 ADB 连接到我的智能手机 我还可以通过 tcp ip 连接到同一智能手机 adb connect 192 168 1 110 同时 USB 电缆仍处于连接状态 但是 一旦我断开电缆 我就会松开 tcp ip
  • 使用 Kotlin 在 Android 中渲染 PDF

    我已经在使用 Java 的 PDF 上看到了该线程 但找不到任何有关如何使用 Kotlin 执行此操作的信息 有什么方法或者我需要使用Java吗 在 Android 上使用 Java 渲染 PDF 文件 https stackoverflo
  • 将 compose 示例项目导入到 android studio 版本 4.2

    我正在尝试导入编写示例项目 https github com android compose samples 但我面临这个错误 Invalid injected android support version 202 7660 26 42
  • Android 自定义进度条不旋转

    我想更改默认动画ProgressBar 所以我在我的主题中添加了自定义样式 样式 xml 我在我的内部调用这种风格ProgressBar具有以下内容 进度条 xml
  • 什么是运行时绑定?

    根据 Android 开发者指南 Intent 是一个提供运行时绑定独立组件之间 例如两个活动 什么是 运行时绑定 继承创建类型兼容性 它允许超类引用 引用子类的对象 反过来则不然 超类引用 指的是 子类的对象 只能用于 访问继承的和重写的
  • 如何以编程方式显示/隐藏导航抽屉

    我如何使用按钮来显示 隐藏导航抽屉 我已经使用过this https stackoverflow com questions 20971245 navigation drawer without actionbar 20971952 209
  • INSTALL_FAILED_MISSING_SHARED_LIBRARY 没有 google api

    好吧 我一直在浏览 但我最终得到的只是谷歌的 api 我没有在我的应用程序中使用任何来自谷歌的API 我正在编写一个使用 sqlite 浏览器的应用程序 但尚未使用任何其他参考 任何想法 我之前没有开始过这个应用程序 所以现在这是一个非常大
  • Android 定期运行任务

    我想在 android 活动中定期运行一个方法 该方法会在 x 秒后更新某个字段 我知道它可以在timerTask中完成 但是最好的方法是什么 代码示例会很有帮助 你应该使用Handler和它的postDelayed功能 您可以在这里找到示
  • 无法解析 styles.xml 中的符号“Theme.AppCompat.Light.DarkActionBar”

    Theme AppCompat Light DarkActionBar is not compiling in styles xml I have added compile com android support appcompat v7
  • 如何使用 Firebase 查询中的信息填充 Android ListView

    这是我的第一篇文章 所以如果我没有遵循我应该遵循的一些协议 我深表歉意 我正在尝试使用 Firebase 数据库中的一些信息填充 ListView 我认为我遇到的问题是对数据库的查询太慢 线程可能正在下载图片 并且我的活动加载其活动布局而不
  • 具有圆角和透明背景的 Android 自定义警报对话框

    我创建了一个带有圆角的自定义 AlertDialog 使用onDraw of LinearLayout如下 public class RoundedLinearLayout extends LinearLayout private Pain
  • 在单元测试用例中未调用 AsyncTask onPostExecute()

    我看过很多与此相关的帖子 但似乎没有一个与我遇到的问题相同 GetBusinessRulesTask 扩展了 AsyncTask 当我在单元测试用例中执行此操作时 onPostExecute 永远不会被调用 但是 如果我使用真正的客户端代码
  • Arcgis:如何获取设备位置

    我如何尝试在我的应用程序中实现这些代码 但它不起作用 我不知道哪里出了问题 基本上 当我启动设备位置的示例时 它没有显示我当前所在的位置 并且我没有看到任何与我当前所在位置类似的蓝点 我唯一看到的就是地图 只是一个简单的缩小地图 如果有人可
  • 渲染期间引发异常:无法找到操作栏的布局

    刚才使用 Android Studio 时 我在编辑器中编辑 XML 文件 在预览和设计窗口中收到此错误 Exception raised during rendering Unable to find the layout for Act
  • 如何在Android中启用接近传感器

    我已在代码中成功配置了距离计 现在我想以编程方式关闭和打开屏幕 传感器代码工作正常 并且也调用了以下方法 Override public void onSensorChanged SensorEvent event TODO Auto ge
  • 如何本地化推送通知权限对话框警报?

    我在过去 3 小时内一直在尝试 但找不到任何方法来对其进行本地化 我使用的是 iOS 10 0 意思是 UNUserNotificationCenter 我想将其本地化为西班牙语 墨西哥 es MX 语言 当您在模拟器中运行应用程序时 您不
  • android 软键盘出现时会破坏布局

    这是一个布局
  • 在这种情况下是否违反了 Google Play 开发者政策? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想通过 Android 应用程序赚一些钱 但我面临一个大问题 Google 在 Google Play 上不支持我所在的国家 地区 适用

随机推荐