gpt4 book ai didi

android - 如何在android中使用日期时间?

转载 作者:搜寻专家 更新时间:2023-11-01 08:03:39 25 4
gpt4 key购买 nike

我有 android 应用程序,因为我将 html 文件称为这些文件页面之一,以便用户可以播放声音 管理声音何时播放:

周六

周日休息

星期一

等等。我的代码写得很好,但是当我管理选择输入时 打开和关闭的选项值在我关闭时返回到默认值 应用程序或转到另一个页面。所以问题是如何跟得上 第一次选择用户选择的选项值?另外,如果我想 在特定时间播放声音:

星期六

5.30am 我该怎么做?

<播放声音的方法>

public class WebAppInterface    {
Context mContext;
public MediaPlayer mp = null;
public static boolean checked = false;
/** Instantiate the interface and set the context */
WebAppInterface(Context c) {
mContext = c;
mp = MediaPlayer.create(mContext,R.raw.sound);
}


@JavascriptInterface
public void playsound(String value ) {

if (value.equals("on")){
checked = true;

mp.setLooping(true);
mp.start();
}
else
{
checked = false;
mp.stop();
}
}
}

HTML代码:

<html>
<form >
<select name="flip-1" id="flip-1" data-role="slider" onchange="getAzan(this)" >
<option value="off" >play</option>
<option value="on">off</option>
</select>
</form>

<script type="text/javascript">
function getAzan(sel) {
var value = sel.options[sel.selectedIndex].value;
Android.playsound(value);
}
</script>

注意:当用户在代码中选择on值时我确实播放了声音

最佳答案

我会说将这些东西保存到 SharedPrefences 会更好而不是将其存储在文件中。

使用 SharedPreferences 非常简单。当您获得值(即:onoff )时,只需打开 SharedPreferences,并将这些值放入其中。

private void editPlayMonday(boolean shouldIPlay) {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
prefs.edit().putBoolean("PlayMonday", shouldIPlay).commit();
}

一旦你的值到位,如果你想知道你是否必须播放一首歌,只需检查 SharedPreferences,然后看看里面有什么:

private void playSong() {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
boolean shouldIPlay = prefs.getBoolean("PlayMonday", false);//false being the default value
if(shouldIPlay) {
//play song or whatever
}
}

现在,您可以在每一天的首选项中设置一个 bool 值,只需检查这些值是否适用于今天的日期。

希望对您有所帮助!

编辑:所以,在上面我给了你管理播放器的键,以及何时需要播放声音。 editPlayMonday功能让您在需要播放声音时注册您的应用程序,playSong让您检查首选项以了解是否必须播放您的歌曲。

现在,在您的应用程序中,您需要使用这些函数并将它们链接到 javascript。我会让你去做,我很确定有很多教程和帮助(即:http://developer.android.com/guide/webapps/webview.html)

我没有给出细节的部分//play song or whatever , 在 playSong功能会有点棘手,你应该详细说明你想用它做什么。我建议您查看 AlarmManager类(class)。它可以让您轻松地从您的应用程序安排事件。参见 the doc欲了解更多信息或此 tutorial关于如何实现它。

总而言之,您需要对您的应用程序做什么:

  • 将您的 HTML 开关链接到 Android editPlay...功能,以便您可以在需要播放歌曲时进行注册。
  • 当您打开 webview 时,检查与每一天对应的 SharedPreference 是 true 还是 false。这样您就可以将不同的 HTML 开关修改为“打开”或“关闭”。
  • editPlay...功能,并使用 AlarmManager,您应该为第二天安排一个闹钟,它将链接到您的歌曲。如果给定日期的 bool 值仍然为真,请记住检查 SharedPreference。您不想在错误的一天播放歌曲...

关于android - 如何在android中使用日期时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17406138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com