【问题标题】:How to set a frequency for the fm radio in android?如何在android中设置调频收音机的频率?
【发布时间】:2021-01-25 09:57:04
【问题描述】:

在我的 android 应用中,我正在使用这个意图来启动调频收音机

Intent i = new Intent(Intent.ACTION_MAIN);
PackageManager manager = getPackageManager();
i = manager.getLaunchIntentForPackage("com.sec.android.app.fm");
i.addCategory(Intent.CATEGORY_LAUNCHER);
startActivity(i);

是否可以设置手动频率并打开调频收音机?谢谢

【问题讨论】:

  • 目前这是一个芯片组。芯片组的制造商可以提供这个。现在,摩托罗拉/联想非常开放。芯片频率范围仅为 65 MHz 至 108 MHz 宽带 FM。 RDS 作为原始数据从芯片中移植出来并被缓冲。这是特定于手机的。 FCC 也可能是一个很好的资源。鲁道夫。

标签: java android


【解决方案1】:

目前没有用于播放 FM 收音机的原生 Android API。

您需要使用 3rd 方应用程序来播放 FM 收音机,并且每个手机供应商/应用程序供应商都有自己的 API。

您最好的选择是直接与他们联系,并要求提供适合您需求的相关 API。

希望这有帮助!

【讨论】:

  • 能否请您详细给我一些API。我已经搜索了一些,但没有完成我的任务:(
  • 您可能不会在网上找到免费使用的这些 API,因为它们是特定于供应商的。这就像你要求三星的 TouchWiz API 的 API 或其他东西 :-) 换句话说,你可能不会在互联网上免费找到它们,你必须写信给供应商,要求他们提供他们的 API (如果他们愿意这样做的话)...
【解决方案2】:

我反编译了 FM Radio 应用,我看到了这段代码:

    void sendFMStatusBroadcast(float p1, String p2) {
        Intent localIntent1 = new Intent("com.android.fm.player_lock.status.channel");
        if(FMRadioProperties.getRegion() == 0x65) {
            localString2 = String.format("%.2f", Float.valueOf(p1));
            localIntent3.putExtra("freq", "%.2f");
        } else {
            localIntent1.putExtra("freq", p1 + "");
        }
        localIntent1.putExtra("name", p2);
        sendBroadcast(localIntent1);
    }

您还应该反编译 FM Radio 应用并在 Main Activity 中搜索 intent,然后使用该代码解决您的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-22
    • 2012-06-21
    • 1970-01-01
    • 2021-10-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多