我正在构建一个GCM扩展,AS3开发人员可以在sdcard上设置mp3文件的位置,当GCM通知运行时,播放自定义声音。一切都很好,一切都很好。
但是当我关闭我的航空应用程序并从服务器发送通知时,将播放Android默认声音。这是因为当空中应用程序关闭时,其上下文为空,并且扩展程序无法访问应用程序设置的参数,因此它将播放默认声音。
我知道我可以在.ane中创建资源并将它们用作自定义声音,但我不想这样做。我想让AS3开发人员自由选择声音文件的位置。
任何想法? 谢谢, 哈迪
答案 0 :(得分:0)
这是一个无耻的自我推销,但我认为告诉那些正在寻找这个的人在这里检查完成的扩展是很好的:http://myappsnippet.com/gcm/
air扩展支持自定义自定义声音和图标!
答案 1 :(得分:0)
您可能需要向应用程序添加一些设置,这些设置存储在本机Android范围内的某个位置,并从GCM通知接收器中访问它们。
查看SharedPreferences
http://developer.android.com/reference/android/content/SharedPreferences.html
例如:
//
// Save a shared preference
SharedPreferences sharedPreferences = context.getActivity().getSharedPreferences( "YOUR_PREFERENCES_NAME", Activity.MODE_PRIVATE );
Editor preferencesEditor = sharedPreferences.edit();
preferencesEditor.putString( "customNotificationSound", soundLocation );
preferencesEditor.commit();
然后在你的接收器中:
SharedPreferences sharedPreferences = context.getActivity().getSharedPreferences( "YOUR_PREFERENCES_NAME", Activity.MODE_PRIVATE );
String soundLocation = sharedPreferences.getBoolean( "customNotificationSound", false );