Adds a permanent, non-consumable premium unlock (EstadoEntitlement + PuertoCompras/ServicioComprasPlayBilling) that removes ads and unlocks alarm vacations, alarms past a 5-alarm free cap, recording start, and full Android Auto browsing. The phone equalizer stays free for everyone. - Entitlement is prefs-backed (compra_premium_v1), fail-open, and resolvable headlessly via esPremiumPersistido() for the Android Auto audio handler, which registers before runApp. - Android Auto reduced mode keeps the real root folder labels for free users; browsing into any of them (and playFromMediaId/playFromSearch/ skipToNext/skipToPrevious) is blocked at the getChildren/servicio_audio choke points, with a locked "Función Premium" item as the backstop. Current-station play/pause/stop stays untouched. A free -> premium transition actively invalidates the head unit's cached browse tree. - Ads (top banner + capped interstitial before adding a station or an alarm) are gated behind entitlement via ServicioAnuncios, using official Google test ad unit IDs pending AdMob provisioning. - Alarm cap UX shows an explanatory message with a secondary unlock action rather than a bare paywall jump; existing data is grandfathered. - 4 new localization keys translated across all 13 supported locales. Co-located tests use strict TDD (RED test before implementation) for every new pure-logic unit; full existing suite passes unchanged.
1807 lines
49 KiB
Dart
1807 lines
49 KiB
Dart
// ignore: unused_import
|
||
import 'package:intl/intl.dart' as intl;
|
||
import 'app_localizations.dart';
|
||
|
||
// ignore_for_file: type=lint
|
||
|
||
/// The translations for Japanese (`ja`).
|
||
class AppLocalizationsJa extends AppLocalizations {
|
||
AppLocalizationsJa([String locale = 'ja']) : super(locale);
|
||
|
||
@override
|
||
String get appTitle => 'PluriWave';
|
||
|
||
@override
|
||
String get navHome => '聴く';
|
||
|
||
@override
|
||
String get navSearch => '検索';
|
||
|
||
@override
|
||
String get navFavorites => 'お気に入り';
|
||
|
||
@override
|
||
String get navAlarms => 'アラーム';
|
||
|
||
@override
|
||
String get navSettings => '設定';
|
||
|
||
@override
|
||
String get actionOk => '了解';
|
||
|
||
@override
|
||
String get sleepTimer => 'スリープタイマー';
|
||
|
||
@override
|
||
String get sleepTimerDescription => '正確なカウントダウンでラジオをなめらかに停止します。';
|
||
|
||
@override
|
||
String get cancelTimer => 'タイマーをキャンセル';
|
||
|
||
@override
|
||
String get optionOther => 'その他';
|
||
|
||
@override
|
||
String get customDurationTitle => 'カスタム時間';
|
||
|
||
@override
|
||
String get durationGreaterThanZero => '0 より大きい時間を選択してください。';
|
||
|
||
@override
|
||
String get hoursLabel => '時間';
|
||
|
||
@override
|
||
String get minutesLabel => '分';
|
||
|
||
@override
|
||
String get secondsLabel => '秒';
|
||
|
||
@override
|
||
String durationHoursMinutesSeconds(
|
||
Object hours,
|
||
Object minutes,
|
||
Object seconds,
|
||
) {
|
||
return '$hours時間$minutes分$seconds秒';
|
||
}
|
||
|
||
@override
|
||
String durationMinutesSeconds(Object minutes, Object seconds) {
|
||
return '$minutes分$seconds秒';
|
||
}
|
||
|
||
@override
|
||
String durationMinutesOnly(Object minutes) {
|
||
return '$minutes分';
|
||
}
|
||
|
||
@override
|
||
String durationSecondsOnly(Object seconds) {
|
||
return '$seconds秒';
|
||
}
|
||
|
||
@override
|
||
String get saveQuickAccess => 'クイックアクセスとして保存';
|
||
|
||
@override
|
||
String get startTimer => 'タイマーを開始';
|
||
|
||
@override
|
||
String skipCurrentAlarmExecution(Object alarmName) {
|
||
return '$alarmName の今回の実行をスキップしました。';
|
||
}
|
||
|
||
@override
|
||
String get settingsTitle => '設定';
|
||
|
||
@override
|
||
String get settingsSubtitle => '音質、バックアップ、カスタム局を細かく管理します。';
|
||
|
||
@override
|
||
String get settingsGroupAudioTitle => 'オーディオ';
|
||
|
||
@override
|
||
String get settingsGroupStationsTitle => '局';
|
||
|
||
@override
|
||
String get settingsGroupRecordingsTitle => '録音と音楽';
|
||
|
||
@override
|
||
String get settingsGroupApplicationTitle => 'アプリ';
|
||
|
||
@override
|
||
String get infoSectionTitle => '情報';
|
||
|
||
@override
|
||
String get languageSectionTitle => '言語';
|
||
|
||
@override
|
||
String get languageSectionDescription => 'アプリの言語表示を選択します。';
|
||
|
||
@override
|
||
String get languageSystemDefault => 'システム';
|
||
|
||
@override
|
||
String get languageSpanish => 'スペイン語';
|
||
|
||
@override
|
||
String get languageEnglish => '英語';
|
||
|
||
@override
|
||
String languageUpdated(Object languageName) {
|
||
return '言語を更新しました: $languageName';
|
||
}
|
||
|
||
@override
|
||
String get languageUpdatedSystem => '言語を更新しました: システム';
|
||
|
||
@override
|
||
String get timerSectionTitle => 'スリープタイマー';
|
||
|
||
@override
|
||
String get timerSectionAdd => '追加';
|
||
|
||
@override
|
||
String get timerSectionDescription =>
|
||
'ラジオを自動停止するときに表示されるクイックプリセットをカスタマイズします。';
|
||
|
||
@override
|
||
String get timerSectionRestoreRecommended => 'おすすめ時間を復元';
|
||
|
||
@override
|
||
String get newQuickAccessTitle => '新しいクイックアクセス';
|
||
|
||
@override
|
||
String get saveQuickAccessButton => 'クイックアクセスを保存';
|
||
|
||
@override
|
||
String get settingsSafeStatus => '安全';
|
||
|
||
@override
|
||
String get recordingsSectionTitle => '録音';
|
||
|
||
@override
|
||
String get recordingsFolderDialogTitle => '録音フォルダーを選択';
|
||
|
||
@override
|
||
String get recordingsPathUpdated => '録音パスを更新しました';
|
||
|
||
@override
|
||
String recordingsPathSaveError(Object error) {
|
||
return 'パスを保存できませんでした: $error';
|
||
}
|
||
|
||
@override
|
||
String get recordingsDefaultFolderRestored => '内部の既定フォルダーを使用します';
|
||
|
||
@override
|
||
String get recordingsFolderTitle => '録音フォルダー';
|
||
|
||
@override
|
||
String get recordingsPathCalculating => 'パスを計算中...';
|
||
|
||
@override
|
||
String get recordingsChangePath => 'パスを変更';
|
||
|
||
@override
|
||
String get recordingsUseDefaultPath => '既定のパスを使用';
|
||
|
||
@override
|
||
String get recordingsOriginalStreamHint => 'ラジオは元のストリームから、再圧縮せずに保存されます。';
|
||
|
||
@override
|
||
String get equalizerActive => '有効';
|
||
|
||
@override
|
||
String get equalizerDisabled => '無効';
|
||
|
||
@override
|
||
String get equalizerEnable => 'イコライザーを有効化';
|
||
|
||
@override
|
||
String get equalizerRealtimeSubtitle => '変更は現在の局にリアルタイムで適用されます。';
|
||
|
||
@override
|
||
String get equalizerPendingSubtitle => '変更は保存され、Android が効果を有効化したときに適用されます。';
|
||
|
||
@override
|
||
String get equalizerPerStationTitle => 'このお気に入りに専用EQを使用';
|
||
|
||
@override
|
||
String equalizerPerStationActive(Object stationName) {
|
||
return '$stationName で有効';
|
||
}
|
||
|
||
@override
|
||
String equalizerPerStationMain(Object stationName) {
|
||
return '$stationName でメインEQを使用中';
|
||
}
|
||
|
||
@override
|
||
String get equalizerBaseExplainer =>
|
||
'これはベースイコライザーです。専用設定を持たないすべての局に適用されます。特定の局専用のEQはその局の再生画面から設定でき、こちらより優先されます。';
|
||
|
||
@override
|
||
String get equalizerActiveOutputLabel => 'アクティブな出力';
|
||
|
||
@override
|
||
String get equalizerActiveOutputDefault => 'この端末のスピーカー';
|
||
|
||
@override
|
||
String get equalizerStationsWithOwnEqTitle => '専用EQを持つ局';
|
||
|
||
@override
|
||
String get equalizerStationsWithOwnEqSubtitle => 'このベースイコライザーを無視します';
|
||
|
||
@override
|
||
String get equalizerStationsWithOwnEqEmpty => '専用EQを持つ局はまだありません。';
|
||
|
||
@override
|
||
String get equalizerSaveAsPresetAction => 'プリセットとして保存';
|
||
|
||
@override
|
||
String get equalizerResetToFlatAction => 'フラットにリセット';
|
||
|
||
@override
|
||
String get equalizerSavePresetDialogTitle => 'プリセットとして保存';
|
||
|
||
@override
|
||
String get equalizerSavePresetNameLabel => 'プリセット名';
|
||
|
||
@override
|
||
String get equalizerSavePresetEmptyNameError => 'プリセットの名前を入力してください。';
|
||
|
||
@override
|
||
String get equalizerSavePresetConfirm => '保存';
|
||
|
||
@override
|
||
String get preferredStationTitle => '優先局';
|
||
|
||
@override
|
||
String get preferredStationDescription => 'アラーム作成時に事前選択され、クイック再生でも開始できます。';
|
||
|
||
@override
|
||
String get preferredStationNoStationsTitle => 'まだ利用できる局がありません';
|
||
|
||
@override
|
||
String get preferredStationNoStationsSubtitle =>
|
||
'優先局を選ぶには、お気に入りを保存するか局を読み込んでください。';
|
||
|
||
@override
|
||
String get preferredStationAutomaticFallback => '自動フォールバック';
|
||
|
||
@override
|
||
String get preferredStationDefaultFavorite => '既定のお気に入り';
|
||
|
||
@override
|
||
String preferredStationCurrent(Object stationName) {
|
||
return '現在の優先局: $stationName';
|
||
}
|
||
|
||
@override
|
||
String preferredStationAutoUsing(Object stationName) {
|
||
return 'お気に入りなし: $stationName を自動使用中';
|
||
}
|
||
|
||
@override
|
||
String get preferredStationPlay => '優先局を再生';
|
||
|
||
@override
|
||
String get customStationsTitle => 'カスタム局';
|
||
|
||
@override
|
||
String get customStationsAdd => '追加';
|
||
|
||
@override
|
||
String get customStationsEmpty => 'カスタム局はありません。';
|
||
|
||
@override
|
||
String get playAction => '再生';
|
||
|
||
@override
|
||
String get deleteAction => '削除';
|
||
|
||
@override
|
||
String get addStationTitle => '局を追加';
|
||
|
||
@override
|
||
String get stationNameLabel => '名前 *';
|
||
|
||
@override
|
||
String get unnamedStation => '無名の放送局';
|
||
|
||
@override
|
||
String get requiredField => '必須項目';
|
||
|
||
@override
|
||
String get streamUrlLabel => 'ストリームURL *';
|
||
|
||
@override
|
||
String get invalidUrl => '無効なURL';
|
||
|
||
@override
|
||
String get countryOptionalLabel => '国(任意)';
|
||
|
||
@override
|
||
String get saveStation => '局を保存';
|
||
|
||
@override
|
||
String get backupSectionTitle => 'バックアップ';
|
||
|
||
@override
|
||
String get backupExportTitle => '設定をエクスポート';
|
||
|
||
@override
|
||
String get backupExportSubtitle => 'お気に入り、カスタム局、EQプリセット';
|
||
|
||
@override
|
||
String get backupImportTitle => '設定をインポート';
|
||
|
||
@override
|
||
String get backupImportSubtitle => 'バックアップファイルから復元';
|
||
|
||
@override
|
||
String get backupShareSubject => 'PluriWave — バックアップ';
|
||
|
||
@override
|
||
String backupShareText(Object date) {
|
||
return '$date にエクスポートされた PluriWave 設定';
|
||
}
|
||
|
||
@override
|
||
String backupExportError(Object error) {
|
||
return 'エクスポート中にエラー: $error';
|
||
}
|
||
|
||
@override
|
||
String get backupImportConfirmMessage => 'ファイル内のお気に入り、局、プリセットを追加します。続行しますか?';
|
||
|
||
@override
|
||
String get backupImportSuccess => '設定を正常にインポートしました';
|
||
|
||
@override
|
||
String backupImportError(Object error) {
|
||
return 'インポート中にエラー: $error';
|
||
}
|
||
|
||
@override
|
||
String get appVersionLoading => 'バージョンを読み込み中...';
|
||
|
||
@override
|
||
String appVersionSubtitle(Object version) {
|
||
return '$version - 世界のラジオ';
|
||
}
|
||
|
||
@override
|
||
String get savedFavoritesTitle => '保存済みのお気に入り';
|
||
|
||
@override
|
||
String get stationFilterTitle => '局フィルター';
|
||
|
||
@override
|
||
String get stationFilterSubtitle => '有効確認済みの局のみ';
|
||
|
||
@override
|
||
String get backgroundAudioTitle => 'バックグラウンド音声';
|
||
|
||
@override
|
||
String get backgroundAudioSubtitle => '画面を消しても継続します';
|
||
|
||
@override
|
||
String get dash => '—';
|
||
|
||
@override
|
||
String get cancelAction => 'キャンセル';
|
||
|
||
@override
|
||
String get equalizerTitle => 'イコライザー';
|
||
|
||
@override
|
||
String get recordingsOpenFolder => 'フォルダーを開く';
|
||
|
||
@override
|
||
String recordingsOpenFolderError(Object error) {
|
||
return 'フォルダーを開けませんでした: $error';
|
||
}
|
||
|
||
@override
|
||
String get recordingsMaxSizeTitle => '録音の最大サイズ';
|
||
|
||
@override
|
||
String recordingsMaxSizeSubtitle(int size) {
|
||
return '現在の上限: $size MB';
|
||
}
|
||
|
||
@override
|
||
String get recordingsMaxSizeDialogTitle => '録音ごとの最大サイズ';
|
||
|
||
@override
|
||
String get recordingsMaxSizeMbLabel => '最大メガバイト';
|
||
|
||
@override
|
||
String recordingsMaxSizeSaved(int size) {
|
||
return '録音上限を $size MB に更新しました';
|
||
}
|
||
|
||
@override
|
||
String get recordingsLibraryTitle => 'マイ録音';
|
||
|
||
@override
|
||
String recordingsLibraryStorageCaption(int usedMb, int totalMb) {
|
||
return '$totalMb MB 中 $usedMb MB 使用済み';
|
||
}
|
||
|
||
@override
|
||
String get recordingsLibraryStorageFolderCaption =>
|
||
'Music/PluriWave・上限に達すると古い順に削除されます';
|
||
|
||
@override
|
||
String get recordingsLibraryEmptyTitle => 'まだ録音がありません';
|
||
|
||
@override
|
||
String get recordingsLibraryEmptySubtitle => '保存した録音はここに表示されます。';
|
||
|
||
@override
|
||
String get recordingActionRename => '名前を変更';
|
||
|
||
@override
|
||
String get recordingActionShare => '共有';
|
||
|
||
@override
|
||
String get recordingActionDelete => '削除';
|
||
|
||
@override
|
||
String get recordingRenameDialogTitle => '録音の名前を変更';
|
||
|
||
@override
|
||
String get recordingRenameLabel => '名前';
|
||
|
||
@override
|
||
String get recordingRenameEmptyError => '名前を入力してください';
|
||
|
||
@override
|
||
String get recordingDeleteConfirmTitle => '録音を削除しますか?';
|
||
|
||
@override
|
||
String get recordingDeleteConfirmMessage => 'この操作は元に戻せません。';
|
||
|
||
@override
|
||
String get recordingsLibrarySettingsTooltip => '録音設定';
|
||
|
||
@override
|
||
String get stationOrderTitle => '局の並び順';
|
||
|
||
@override
|
||
String get stationOrderByName => '名前順';
|
||
|
||
@override
|
||
String get stationOrderByQuality => '品質順';
|
||
|
||
@override
|
||
String get stationOrderByPopularity => '人気順';
|
||
|
||
@override
|
||
String get stationOrderScopeDescription => 'お気に入り、検索、近くの局、クイック一覧に適用されます。';
|
||
|
||
@override
|
||
String get favoriteGroupsTitle => 'お気に入りリスト';
|
||
|
||
@override
|
||
String get favoriteGroupsDescription => '保存した局を整理する短いリストを作成します。';
|
||
|
||
@override
|
||
String get favoriteGroupsAdd => 'リストを追加';
|
||
|
||
@override
|
||
String get favoriteGroupsEdit => 'リストを編集';
|
||
|
||
@override
|
||
String get favoriteGroupsDelete => 'リストを削除';
|
||
|
||
@override
|
||
String get favoriteGroupsNameLabel => 'リスト名';
|
||
|
||
@override
|
||
String get favoriteGroupsNameTooLong => '最大28文字です。';
|
||
|
||
@override
|
||
String get favoriteGroupsUnassigned => '未割り当て';
|
||
|
||
@override
|
||
String get favoriteGroupsProtectedHint => '既定のリスト: 編集または削除できません。';
|
||
|
||
@override
|
||
String get favoriteGroupsCreated => 'リストを作成しました';
|
||
|
||
@override
|
||
String get favoriteGroupsUpdated => 'リストを更新しました';
|
||
|
||
@override
|
||
String get favoriteGroupsDeleted => 'リストを削除しました。局は未割り当てに戻りました。';
|
||
|
||
@override
|
||
String get favoriteGroupsAssign => 'リストへ移動';
|
||
|
||
@override
|
||
String favoriteGroupsAssignSubtitle(Object groupName) {
|
||
return '現在のリスト: $groupName';
|
||
}
|
||
|
||
@override
|
||
String favoriteGroupsAssigned(Object stationName, Object groupName) {
|
||
return '$stationName を $groupName に移動しました';
|
||
}
|
||
|
||
@override
|
||
String get favoritesTitle => 'お気に入り';
|
||
|
||
@override
|
||
String get favoritesEmptyTitle => 'まだお気に入りはありません';
|
||
|
||
@override
|
||
String get favoritesEmptySubtitle => '任意の局でハートをタップしてコレクションに保存します。';
|
||
|
||
@override
|
||
String get favoritesHeaderSubtitle => 'コレクションをリストで整理し、大事なラジオを近くに置きましょう。';
|
||
|
||
@override
|
||
String get favoritesCollection => 'コレクション';
|
||
|
||
@override
|
||
String favoritesSavedCount(int count) {
|
||
return '$count 件保存済み';
|
||
}
|
||
|
||
@override
|
||
String get favoritesRemoveTooltip => 'お気に入りから削除';
|
||
|
||
@override
|
||
String favoritesRemovedMessage(Object stationName) {
|
||
return '$stationName をお気に入りから削除しました';
|
||
}
|
||
|
||
@override
|
||
String get favoritesFilterAllLabel => 'すべて';
|
||
|
||
@override
|
||
String favoriteGroupsChipLabel(Object groupName, int count) {
|
||
return '$groupName · $count';
|
||
}
|
||
|
||
@override
|
||
String get favoriteGroupsManage => 'リストを管理';
|
||
|
||
@override
|
||
String get customStationsAddCta => 'カスタム局を追加';
|
||
|
||
@override
|
||
String get alarmPostponedCurrentExecution => 'この実行のアラームを延期しました。';
|
||
|
||
@override
|
||
String get searchScreenTitle => '電波を探す';
|
||
|
||
@override
|
||
String get searchScreenSubtitle => '名前、国、言語で、すばやいフィルターと高コントラスト表示からラジオを見つけます。';
|
||
|
||
@override
|
||
String get searchFiltersLabel => 'フィルター';
|
||
|
||
@override
|
||
String get searchHint => 'ラジオ・オリゾンテ、ジャズ、ニュース...';
|
||
|
||
@override
|
||
String get searchCountryFilterLabel => '国';
|
||
|
||
@override
|
||
String get searchLanguageFilterLabel => '言語';
|
||
|
||
@override
|
||
String get searchMinQualityFilterLabel => '最低品質';
|
||
|
||
@override
|
||
String get searchLoadingStationsLabel => '局を検索中…';
|
||
|
||
@override
|
||
String get searchEmptyTitle => '局を検索';
|
||
|
||
@override
|
||
String get searchNoResultsTitle => '結果がありません';
|
||
|
||
@override
|
||
String searchNoResultsForQueryTitle(Object query) {
|
||
return '「$query」の結果はありません';
|
||
}
|
||
|
||
@override
|
||
String get searchEmptySubtitle => '上部バーやチップを使って、世界中の電波を見つけましょう。';
|
||
|
||
@override
|
||
String get searchNoResultsSubtitle => '有効な電波を見つけるには、フィルターを外すか別の名前を入力してください。';
|
||
|
||
@override
|
||
String searchResultsCount(num count) {
|
||
String _temp0 = intl.Intl.pluralLogic(
|
||
count,
|
||
locale: localeName,
|
||
other: '$count件の結果',
|
||
);
|
||
return '$_temp0';
|
||
}
|
||
|
||
@override
|
||
String searchClearFiltersAction(num count) {
|
||
String _temp0 = intl.Intl.pluralLogic(
|
||
count,
|
||
locale: localeName,
|
||
other: '$count件のフィルターをクリア',
|
||
one: 'フィルターをクリア',
|
||
);
|
||
return '$_temp0';
|
||
}
|
||
|
||
@override
|
||
String get countriesScreenTitle => '国';
|
||
|
||
@override
|
||
String get countriesSearchHint => '国名またはコード...';
|
||
|
||
@override
|
||
String get countriesYourLanguagesTitle => 'あなたの言語';
|
||
|
||
@override
|
||
String get countriesAllTitle => 'すべての国';
|
||
|
||
@override
|
||
String get radioCountriesError => '国の一覧を読み込めませんでした。';
|
||
|
||
@override
|
||
String get countrySpain => 'スペイン';
|
||
|
||
@override
|
||
String get countryUsa => '米国';
|
||
|
||
@override
|
||
String get countryMexico => 'メキシコ';
|
||
|
||
@override
|
||
String get countryArgentina => 'アルゼンチン';
|
||
|
||
@override
|
||
String get countryUk => '英国';
|
||
|
||
@override
|
||
String get countryFrance => 'フランス';
|
||
|
||
@override
|
||
String get countryGermany => 'ドイツ';
|
||
|
||
@override
|
||
String get countryItaly => 'イタリア';
|
||
|
||
@override
|
||
String get countryBrazil => 'ブラジル';
|
||
|
||
@override
|
||
String get countryJapan => '日本';
|
||
|
||
@override
|
||
String get languageNameSpanish => 'スペイン語';
|
||
|
||
@override
|
||
String get languageNameEnglish => '英語';
|
||
|
||
@override
|
||
String get languageNameFrench => 'フランス語';
|
||
|
||
@override
|
||
String get languageNameGerman => 'ドイツ語';
|
||
|
||
@override
|
||
String get languageNamePortuguese => 'ポルトガル語';
|
||
|
||
@override
|
||
String get languageNameItalian => 'イタリア語';
|
||
|
||
@override
|
||
String get languageNameJapanese => '日本語';
|
||
|
||
@override
|
||
String get languageNameArabic => 'アラビア語';
|
||
|
||
@override
|
||
String get languageNameRussian => 'ロシア語';
|
||
|
||
@override
|
||
String get homeScreenSubtitle =>
|
||
'クリアな電波、スマートなお気に入り、クイズ番組風のビジュアル体験を備えたライブ世界ラジオ。';
|
||
|
||
@override
|
||
String get exploreStations => '局を探す';
|
||
|
||
@override
|
||
String stationsCount(int count) {
|
||
return '$count 局';
|
||
}
|
||
|
||
@override
|
||
String get qualityHd => 'HD品質';
|
||
|
||
@override
|
||
String get yourStationsTitle => 'あなたの局';
|
||
|
||
@override
|
||
String get seeAllAction => 'すべて見る';
|
||
|
||
@override
|
||
String get openFullPlayerTooltip => 'フルプレーヤーを開く';
|
||
|
||
@override
|
||
String get nowListeningLabel => '再生中';
|
||
|
||
@override
|
||
String get nothingPlayingTitle => 'まだ何も再生されていません';
|
||
|
||
@override
|
||
String get nothingPlayingSubtitle => '「あなたの局」から局を選ぶか、検索して再生を始めましょう。';
|
||
|
||
@override
|
||
String get nearYou => '近く';
|
||
|
||
@override
|
||
String nearYouInCountry(Object country) {
|
||
return '近く · $country';
|
||
}
|
||
|
||
@override
|
||
String get detectAction => '検出';
|
||
|
||
@override
|
||
String get liveRadar => 'ライブレーダー';
|
||
|
||
@override
|
||
String get genresTitle => 'ジャンル';
|
||
|
||
@override
|
||
String get exploreByTitle => 'カテゴリで探す';
|
||
|
||
@override
|
||
String get exploreTrendingTitle => 'トレンド';
|
||
|
||
@override
|
||
String get exploreTrendingSubtitle => '今日';
|
||
|
||
@override
|
||
String get exploreNewTitle => '新着';
|
||
|
||
@override
|
||
String get exploreNewSubtitle => '今週';
|
||
|
||
@override
|
||
String get popularNowTitle => '今人気';
|
||
|
||
@override
|
||
String get offlineBannerTitle => '接続なし';
|
||
|
||
@override
|
||
String get retryAction => '再試行';
|
||
|
||
@override
|
||
String get noStationsAvailable => '利用できる局がありません';
|
||
|
||
@override
|
||
String get noStationsAvailableSubtitle =>
|
||
'再読み込みするか別のジャンルを選んで、もう一度電波をつかまえてください。';
|
||
|
||
@override
|
||
String get genrePop => 'ポップ';
|
||
|
||
@override
|
||
String get genreRock => 'ロック';
|
||
|
||
@override
|
||
String get genreJazz => 'ジャズ';
|
||
|
||
@override
|
||
String get genreClassical => 'クラシック';
|
||
|
||
@override
|
||
String get genreElectronic => '電子音楽';
|
||
|
||
@override
|
||
String get genreNews => 'ニュース';
|
||
|
||
@override
|
||
String get genreTalk => 'トーク';
|
||
|
||
@override
|
||
String get genreHipHop => 'ヒップホップ';
|
||
|
||
@override
|
||
String get genreCountry => 'カントリー';
|
||
|
||
@override
|
||
String get genreMetal => 'メタル';
|
||
|
||
@override
|
||
String get genreReggae => 'レゲエ';
|
||
|
||
@override
|
||
String get genreLatin => 'ラテン';
|
||
|
||
@override
|
||
String get alarmScreenTitle => '音楽で目覚める';
|
||
|
||
@override
|
||
String get alarmScreenSubtitle => 'ラジオアラーム、安全な音、スマート休暇、次回実行を常に表示します。';
|
||
|
||
@override
|
||
String get createAlarmAction => 'アラームを作成';
|
||
|
||
@override
|
||
String alarmsCount(int count) {
|
||
return '$count 件のアラーム';
|
||
}
|
||
|
||
@override
|
||
String get activeAlarmsWithoutNextTitle => '次回実行がない有効なアラーム';
|
||
|
||
@override
|
||
String get noActiveAlarms => '有効なアラームはありません';
|
||
|
||
@override
|
||
String get nextAlarmTitle => '次のアラーム';
|
||
|
||
@override
|
||
String activeAlarmsWithoutNextSubtitle(int count) {
|
||
return '$count 件の有効なアラームがありますが、現在は有効な未来の日付がありません。日付、曜日、休暇を確認してください。';
|
||
}
|
||
|
||
@override
|
||
String get createAlarmHint => 'アラームを作成すると、PluriWave が次回実行を自動計算します。';
|
||
|
||
@override
|
||
String get alarmVacationPlay => '休暇中も鳴らす';
|
||
|
||
@override
|
||
String get alarmVacationPause => '休暇中は一時停止';
|
||
|
||
@override
|
||
String alarmFadeInLabel(int seconds) {
|
||
return 'フェードイン $seconds秒';
|
||
}
|
||
|
||
@override
|
||
String alarmNextExecution(Object date) {
|
||
return '次回実行: $date';
|
||
}
|
||
|
||
@override
|
||
String get alarmNoNextExecution => '有効な次回実行はありません。';
|
||
|
||
@override
|
||
String alarmSkippedExecution(Object date) {
|
||
return '1 回の実行をスキップしました: $date。';
|
||
}
|
||
|
||
@override
|
||
String get editAction => '編集';
|
||
|
||
@override
|
||
String get skipNextAction => '次回をスキップ';
|
||
|
||
@override
|
||
String get deleteTooltip => '削除';
|
||
|
||
@override
|
||
String get alarmHeroSkipAction => 'スキップ';
|
||
|
||
@override
|
||
String get alarmDeleteConfirmTitle => 'アラームを削除しますか?';
|
||
|
||
@override
|
||
String get alarmDeleteConfirmMessage => 'この操作は元に戻せません。';
|
||
|
||
@override
|
||
String get alarmSkippedNoNextSnackbar => 'アラームをスキップしました。次回実行は残っていません。';
|
||
|
||
@override
|
||
String alarmSkippedReturnsSnackbar(Object date) {
|
||
return 'アラームをスキップしました。$date に戻ります。';
|
||
}
|
||
|
||
@override
|
||
String alarmVacationPausedNoNext(Object vacationName) {
|
||
return '休暇($vacationName)で一時停止中、次回実行はありません。';
|
||
}
|
||
|
||
@override
|
||
String alarmVacationPausedReturns(Object vacationName, Object date) {
|
||
return '休暇($vacationName)で一時停止中、$date に戻ります。';
|
||
}
|
||
|
||
@override
|
||
String alarmVacationReturns(Object date) {
|
||
return '休暇が有効なため、$date に再び鳴ります。';
|
||
}
|
||
|
||
@override
|
||
String get defaultAlarmName => '音楽アラーム';
|
||
|
||
@override
|
||
String get newAlarmTitle => '新しいアラーム';
|
||
|
||
@override
|
||
String get editAlarmTitle => 'アラームを編集';
|
||
|
||
@override
|
||
String get nameField => '名前';
|
||
|
||
@override
|
||
String get timeField => '時刻';
|
||
|
||
@override
|
||
String get dateField => '日付';
|
||
|
||
@override
|
||
String get onceOption => '1回';
|
||
|
||
@override
|
||
String get dailyOption => '毎日';
|
||
|
||
@override
|
||
String get weekdaysOption => '曜日';
|
||
|
||
@override
|
||
String get soundAndVolumeSection => '音と音量';
|
||
|
||
@override
|
||
String get alarmFadeInTitle => 'アラームのフェードイン';
|
||
|
||
@override
|
||
String get alarmFadeInOff => '0 秒(切り替えなし)';
|
||
|
||
@override
|
||
String alarmFadeInSummary(int seconds) {
|
||
return '$seconds 秒(5% から選択音量まで)';
|
||
}
|
||
|
||
@override
|
||
String get internalSafeSoundLabel => '安全な内部音';
|
||
|
||
@override
|
||
String get soundWarmSunrise => '暖かな日の出';
|
||
|
||
@override
|
||
String get soundSoftBell => 'やさしいベル';
|
||
|
||
@override
|
||
String get soundDigitalPulse => 'デジタルパルス';
|
||
|
||
@override
|
||
String get favoriteStationLabel => 'お気に入り局';
|
||
|
||
@override
|
||
String get noStationUseInternalSound => '局なし: 内部音を使用';
|
||
|
||
@override
|
||
String get alarmFallbackStationLabel => '予備の局';
|
||
|
||
@override
|
||
String get alarmStationPickerSearchHint => '局名で検索';
|
||
|
||
@override
|
||
String get alarmSnoozeDurationTitle => 'スヌーズ時間';
|
||
|
||
@override
|
||
String get snoozeAction => 'スヌーズ';
|
||
|
||
@override
|
||
String alarmSnoozeOptionLabel(int minutes) {
|
||
return '$minutes分';
|
||
}
|
||
|
||
@override
|
||
String get alarmSnoozeUsualLabel => '通常';
|
||
|
||
@override
|
||
String get saveFavoritesAlarmHint => '音楽アラームとして使うには、局をお気に入りに保存してください。';
|
||
|
||
@override
|
||
String get useCurrentStationAction => '現在の局を使用';
|
||
|
||
@override
|
||
String get playDuringVacations => '休暇中も鳴らす';
|
||
|
||
@override
|
||
String get playDuringVacationsHint => 'オフにすると、次回実行は最初の有効日にスキップされます。';
|
||
|
||
@override
|
||
String get saveAlarmAction => 'アラームを保存';
|
||
|
||
@override
|
||
String get chooseOneWeekdayError => '少なくとも曜日を1つ選択してください。';
|
||
|
||
@override
|
||
String get androidReliabilityReview => 'Android の信頼性を確認';
|
||
|
||
@override
|
||
String get statusOk => '良好';
|
||
|
||
@override
|
||
String get statusPending => '保留中';
|
||
|
||
@override
|
||
String androidReliabilityStatus(
|
||
Object exact,
|
||
Object notifications,
|
||
Object screen,
|
||
) {
|
||
return '信頼性: 正確 $exact · 通知 $notifications · 画面 $screen';
|
||
}
|
||
|
||
@override
|
||
String get vacationRangesTitle => '休暇期間';
|
||
|
||
@override
|
||
String get addAction => '追加';
|
||
|
||
@override
|
||
String get vacationRangesHint => 'アラームが「休暇中は一時停止」の場合、これらの期間は自動的にスキップされます。';
|
||
|
||
@override
|
||
String get noVacationRangesLoaded => '読み込まれた期間はありません。';
|
||
|
||
@override
|
||
String get deleteRangeTooltip => '期間を削除';
|
||
|
||
@override
|
||
String vacationRangesCount(int count) {
|
||
return '$count 件の期間';
|
||
}
|
||
|
||
@override
|
||
String vacationSummaryActiveCountdown(int days) {
|
||
return '進行中 · 残り$days日';
|
||
}
|
||
|
||
@override
|
||
String vacationSummaryUpcomingCountdown(int days) {
|
||
return '次の期間まであと$days日';
|
||
}
|
||
|
||
@override
|
||
String vacationImpactPausedLabel(Object times) {
|
||
return '一時停止: $times';
|
||
}
|
||
|
||
@override
|
||
String vacationImpactContinuesLabel(Object times) {
|
||
return '引き続き鳴動: $times';
|
||
}
|
||
|
||
@override
|
||
String get vacationUpcomingSectionTitle => '予定';
|
||
|
||
@override
|
||
String get vacationPastSectionTitle => '過去の期間';
|
||
|
||
@override
|
||
String get addVacationRangeCta => '期間を追加';
|
||
|
||
@override
|
||
String get vacationExplainerBanner =>
|
||
'この期間中は「休暇中は一時停止」に設定したアラームは鳴りません。「常に鳴らす」に設定したアラームには影響しません。';
|
||
|
||
@override
|
||
String get vacationNoActiveRangeHint => '現在アクティブな休暇期間はありません。';
|
||
|
||
@override
|
||
String get vacationsDefaultName => '休暇';
|
||
|
||
@override
|
||
String get newVacationRangeTitle => '新しい休暇期間';
|
||
|
||
@override
|
||
String get editVacationRangeTitle => '休暇期間を編集';
|
||
|
||
@override
|
||
String get vacationDeleteConfirmTitle => '休暇期間を削除しますか?';
|
||
|
||
@override
|
||
String get vacationDeleteConfirmMessage => 'この操作は元に戻せません。';
|
||
|
||
@override
|
||
String get startField => '開始';
|
||
|
||
@override
|
||
String get endField => '終了';
|
||
|
||
@override
|
||
String get saveRangeAction => '期間を保存';
|
||
|
||
@override
|
||
String get noAlarmsYetTitle => 'まだアラームはありません。';
|
||
|
||
@override
|
||
String get noAlarmsYetSubtitle => '音楽で目覚める体験を作るために、アラームを作成しましょう。';
|
||
|
||
@override
|
||
String get ringingInternalAudioActive => '安全な内部音で鳴っています。';
|
||
|
||
@override
|
||
String get ringingPreparingInternalAudio => '安全な内部音を準備中です。';
|
||
|
||
@override
|
||
String get stopAlarmAction => 'アラームを停止';
|
||
|
||
@override
|
||
String get alarmStopFailedMessage => 'アラームが停止したことを確認できませんでした。もう一度お試しください。';
|
||
|
||
@override
|
||
String get alarmForceStopAction => '強制停止';
|
||
|
||
@override
|
||
String get alarmMissedNotificationTitle => 'アラームの聞き逃し';
|
||
|
||
@override
|
||
String alarmMissedNotificationText(Object name) {
|
||
return '$nameは10分後に自動的に消音されました。';
|
||
}
|
||
|
||
@override
|
||
String get pauseAction => '一時停止';
|
||
|
||
@override
|
||
String miniPlayerOpenLabel(Object stationName) {
|
||
return '$stationNameのプレーヤーを開く';
|
||
}
|
||
|
||
@override
|
||
String get playerIconLabel => 'プレーヤー';
|
||
|
||
@override
|
||
String get playbackStatusConnecting => '接続中...';
|
||
|
||
@override
|
||
String get playbackStatusLive => 'ライブ';
|
||
|
||
@override
|
||
String get playbackStatusPaused => '一時停止中';
|
||
|
||
@override
|
||
String get playbackStatusReconnecting => '再接続中...';
|
||
|
||
@override
|
||
String get playbackStatusConnectionError => '接続エラー';
|
||
|
||
@override
|
||
String get playbackStatusStopped => '停止中';
|
||
|
||
@override
|
||
String stationSemanticLabel(Object stationName) {
|
||
return 'ラジオ局 $stationName';
|
||
}
|
||
|
||
@override
|
||
String get favoritesAddTooltip => 'お気に入りに追加';
|
||
|
||
@override
|
||
String favoritesAddedMessage(Object stationName) {
|
||
return '$stationNameをお気に入りに追加しました';
|
||
}
|
||
|
||
@override
|
||
String get stationIconLabel => 'ラジオ局アイコン';
|
||
|
||
@override
|
||
String get liveNow => 'ライブ';
|
||
|
||
@override
|
||
String equalizerBandLabel(Object band) {
|
||
return '$bandバンド';
|
||
}
|
||
|
||
@override
|
||
String equalizerBandValue(Object value) {
|
||
return '$value デシベル';
|
||
}
|
||
|
||
@override
|
||
String get equalizerPresetFlat => 'フラット';
|
||
|
||
@override
|
||
String get equalizerPresetRock => 'ロック';
|
||
|
||
@override
|
||
String get equalizerPresetPop => 'ポップ';
|
||
|
||
@override
|
||
String get equalizerPresetBassBoost => '低音ブースト';
|
||
|
||
@override
|
||
String get equalizerPresetJazz => 'ジャズ';
|
||
|
||
@override
|
||
String get equalizerPresetVoice => '音声';
|
||
|
||
@override
|
||
String get equalizerPresetCustom => 'カスタム';
|
||
|
||
@override
|
||
String get onboardingTitle => 'PluriWaveへようこそ';
|
||
|
||
@override
|
||
String get onboardingNewsTitle => '新機能';
|
||
|
||
@override
|
||
String get onboardingStartAction => '始める';
|
||
|
||
@override
|
||
String get onboardingCloseTooltip => '閉じる';
|
||
|
||
@override
|
||
String radioRecordingError(Object error) {
|
||
return 'ラジオの録音エラー: $error';
|
||
}
|
||
|
||
@override
|
||
String get radioApiConnectionError => 'ラジオAPIに接続できません';
|
||
|
||
@override
|
||
String get radioSearchError => '検索エラーです。接続を確認してください。';
|
||
|
||
@override
|
||
String get radioLoadMoreStationsError => 'これ以上ラジオ局を読み込めませんでした。';
|
||
|
||
@override
|
||
String get radioNearbyStationsError => '近くのラジオ局を検出できませんでした。国フィルターを使用してください。';
|
||
|
||
@override
|
||
String radioCannotPlayStation(Object stationName) {
|
||
return '\"$stationName\"を再生できません';
|
||
}
|
||
|
||
@override
|
||
String get recordingSelectStationFirst => '録音するにはまずラジオ局を選択してください。';
|
||
|
||
@override
|
||
String recordingStartError(Object error) {
|
||
return '録音を開始できませんでした: $error';
|
||
}
|
||
|
||
@override
|
||
String get unsupportedConfigVersion => 'サポートされていない設定バージョンです';
|
||
|
||
@override
|
||
String get audioErrorGeneric => '再生エラー';
|
||
|
||
@override
|
||
String get audioErrorNoInternet => 'インターネット接続がありません';
|
||
|
||
@override
|
||
String get audioErrorInvalidUrl => 'ラジオのURLが無効です';
|
||
|
||
@override
|
||
String get audioErrorNotFound => 'ラジオは利用できません(404エラー)';
|
||
|
||
@override
|
||
String get audioErrorTimeout => '接続がタイムアウトしました';
|
||
|
||
@override
|
||
String get audioErrorCannotConnect => 'ラジオに接続できません';
|
||
|
||
@override
|
||
String get audioErrorUnsupportedFormat => 'サポートされていないストリーム形式です';
|
||
|
||
@override
|
||
String get audioErrorDecode => '音声ストリームのデコード中にエラーが発生しました';
|
||
|
||
@override
|
||
String get audioErrorCleartext => 'このラジオは暗号化されていないHTTPを使用しているため、許可されていません';
|
||
|
||
@override
|
||
String get audioErrorSsl => 'ラジオのSSL証明書が無効です';
|
||
|
||
@override
|
||
String get audioErrorCannotPlay => 'このラジオは再生できません';
|
||
|
||
@override
|
||
String get audioErrorUnexpectedPlayback => '再生中に予期しないエラーが発生しました';
|
||
|
||
@override
|
||
String get androidExactAlarmScheduleError =>
|
||
'Androidで正確なアラームをスケジュールできませんでした。正確なアラームの権限を確認してください。';
|
||
|
||
@override
|
||
String get recordingPathEmptyError => '録音パスを空にすることはできません';
|
||
|
||
@override
|
||
String get recordingMaxSizeInvalidError => '最大サイズは0より大きくする必要があります';
|
||
|
||
@override
|
||
String get recordingAlreadyActiveError => 'すでに録音が進行中です';
|
||
|
||
@override
|
||
String get alarmRingingFallbackActive => '内部の安全な音声で再生しています。';
|
||
|
||
@override
|
||
String get alarmRingingPreparingFallback => '内部の安全な音声を準備しています。';
|
||
|
||
@override
|
||
String get alarmRingingTryingStation => '利用可能な最高音質で放送局の再生を試みています。';
|
||
|
||
@override
|
||
String get alarmScheduleDaily => '毎朝';
|
||
|
||
@override
|
||
String alarmScheduleOnce(Object date) {
|
||
return '1回 · $date';
|
||
}
|
||
|
||
@override
|
||
String alarmScheduleWeekdays(Object days) {
|
||
return '曜日: $days';
|
||
}
|
||
|
||
@override
|
||
String get alarmRepeatSectionLabel => '繰り返し';
|
||
|
||
@override
|
||
String get alarmVolumeLabel => '音量';
|
||
|
||
@override
|
||
String get androidReliabilityTitle => 'Androidの信頼性を確認';
|
||
|
||
@override
|
||
String get closeAction => '閉じる';
|
||
|
||
@override
|
||
String get customOption => 'カスタム';
|
||
|
||
@override
|
||
String get endLabel => '終了';
|
||
|
||
@override
|
||
String get equalizerDisable => 'イコライザーを無効化';
|
||
|
||
@override
|
||
String get helpTitle => 'ヘルプとチュートリアル';
|
||
|
||
@override
|
||
String get helpSubtitle => '全9画面・いつでも見返せます';
|
||
|
||
@override
|
||
String get tutorialSkipAction => 'スキップ';
|
||
|
||
@override
|
||
String get tutorialNextAction => '次へ';
|
||
|
||
@override
|
||
String get tutorialPage1Headline => 'お気に入りの局を保存してグループ分け';
|
||
|
||
@override
|
||
String get tutorialPage1Body =>
|
||
'ハートをタップして局を保存しましょう。「あなたの局」では「毎朝」や「車」などのグループを作り、ドラッグして並べ替えられます。';
|
||
|
||
@override
|
||
String get tutorialPage2Headline => '基本のイコライザーと局ごとのイコライザー';
|
||
|
||
@override
|
||
String get tutorialPage2Body =>
|
||
'設定で全体のイコライザーを決められます。特定の局を再生中は、その局専用の設定を適用でき、全体設定より優先されます。';
|
||
|
||
@override
|
||
String get tutorialPage3Headline => '聴いている番組を録音';
|
||
|
||
@override
|
||
String get tutorialPage3Body =>
|
||
'プレーヤーのツールトレイから「録音」をタップすると、元のストリームが保存されます。録音は設定›録音で確認できます。';
|
||
|
||
@override
|
||
String get tutorialPage4Headline => 'あなたに合わせてくれるアラーム';
|
||
|
||
@override
|
||
String get tutorialPage4Body =>
|
||
'お気に入りの局で目覚め、3分・5分・10分でスヌーズでき、休暇期間を追加すれば一部のアラームを自動でスキップできます。';
|
||
|
||
@override
|
||
String get tutorialPage5Headline => 'お気に入りは車でも';
|
||
|
||
@override
|
||
String get tutorialPage5Body =>
|
||
'スマートフォンをAndroid Autoに接続すると、お気に入り、すべての局、あなたの局、ローカルミュージックが、運転向けの大きなボタンで使えます。';
|
||
|
||
@override
|
||
String get tutorialPage6Headline => '自動で再接続';
|
||
|
||
@override
|
||
String get tutorialPage6Body =>
|
||
'電波が途切れても、PluriWaveは自動的に再試行し、接続がなくても保存済みのお気に入りを表示し続けます。';
|
||
|
||
@override
|
||
String get tutorialPage7Headline => 'スヌーズ時間を選べる';
|
||
|
||
@override
|
||
String get tutorialPage7Body =>
|
||
'アラームが鳴ったとき、「スヌーズ」は一つだけではありません。3分・5分・10分から、その時必要な時間を選べます。';
|
||
|
||
@override
|
||
String get tutorialPage8Headline => '見つからない?自分で追加';
|
||
|
||
@override
|
||
String get tutorialPage8Body =>
|
||
'「あなたの局」→カスタム局を追加で、検索にない局のストリームURLを貼り付けられます。「あなたの局」に保存され、車でも利用できます。';
|
||
|
||
@override
|
||
String get tutorialPage9Headline => '完了、基本はこれで押さえました';
|
||
|
||
@override
|
||
String get tutorialPage9BannerBody =>
|
||
'このチュートリアルはいつでも再確認できます:設定 → 情報 → ヘルプとチュートリアル。';
|
||
|
||
@override
|
||
String get indefiniteOption => '無期限';
|
||
|
||
@override
|
||
String get invalidNumber => '無効な数値';
|
||
|
||
@override
|
||
String get nameLabel => '名前';
|
||
|
||
@override
|
||
String get notPlaying => '再生していません';
|
||
|
||
@override
|
||
String get oneTimeOption => '1回';
|
||
|
||
@override
|
||
String get pausePlaybackTooltip => '再生を一時停止';
|
||
|
||
@override
|
||
String get playerQualityChangeAction => '変更';
|
||
|
||
@override
|
||
String get playerToolEqLabel => '専用EQ';
|
||
|
||
@override
|
||
String qualityOriginal(Object quality) {
|
||
return '元の音質: $quality';
|
||
}
|
||
|
||
@override
|
||
String get qualityUnknown => '音質情報なし';
|
||
|
||
@override
|
||
String get recordAction => '録音';
|
||
|
||
@override
|
||
String get recordDurationTitle => '録音時間';
|
||
|
||
@override
|
||
String get recordRadioSubtitle => '録音する時間を選んでください。';
|
||
|
||
@override
|
||
String get recordRadioTitle => 'ラジオを録音';
|
||
|
||
@override
|
||
String get recordingActiveTitle => 'ラジオを録音中';
|
||
|
||
@override
|
||
String get recordingDirectTitle => 'ダイレクト録音';
|
||
|
||
@override
|
||
String get recordingsOpenFolderPlainError => '録音フォルダーを開けませんでした';
|
||
|
||
@override
|
||
String get recordingsOpenLatest => '最新の録音を開く';
|
||
|
||
@override
|
||
String get recordingsOpenLatestError => '最新の録音を開けませんでした';
|
||
|
||
@override
|
||
String get startLabel => '開始';
|
||
|
||
@override
|
||
String get startPlaybackTooltip => '再生を開始';
|
||
|
||
@override
|
||
String get stopAction => '停止';
|
||
|
||
@override
|
||
String get stopPlaybackTooltip => '再生を停止';
|
||
|
||
@override
|
||
String get weekdayShortMonday => '月';
|
||
|
||
@override
|
||
String get weekdayShortTuesday => '火';
|
||
|
||
@override
|
||
String get weekdayShortWednesday => '水';
|
||
|
||
@override
|
||
String get weekdayShortThursday => '木';
|
||
|
||
@override
|
||
String get weekdayShortFriday => '金';
|
||
|
||
@override
|
||
String get weekdayShortSaturday => '土';
|
||
|
||
@override
|
||
String get weekdayShortSunday => '日';
|
||
|
||
@override
|
||
String stationCount(int count) {
|
||
String _temp0 = intl.Intl.pluralLogic(
|
||
count,
|
||
locale: localeName,
|
||
other: '$count局',
|
||
);
|
||
return '$_temp0';
|
||
}
|
||
|
||
@override
|
||
String get alarmIconLabel => 'ミュージックアラーム';
|
||
|
||
@override
|
||
String get vacationIconLabel => '休暇モード';
|
||
|
||
@override
|
||
String get alarmAdvancedSectionTitle => '詳細設定';
|
||
|
||
@override
|
||
String get alarmInlineHourLabel => '時';
|
||
|
||
@override
|
||
String get alarmInlineMinuteLabel => '分';
|
||
|
||
@override
|
||
String get alarmVolumeRisingStatus => '音量を上げています';
|
||
|
||
@override
|
||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||
|
||
@override
|
||
String get advancedEqSectionTitle => '高度なEQオプション';
|
||
|
||
@override
|
||
String get advancedEqEnableToggle => 'デバイスごとのEQを有効にする';
|
||
|
||
@override
|
||
String get advancedEqEnableToggleSubtitle =>
|
||
'オーディオ出力が変わると、自動的に別のEQプリセットを適用します。';
|
||
|
||
@override
|
||
String get advancedEqKnownDevicesTitle => '登録済みオーディオデバイス';
|
||
|
||
@override
|
||
String get advancedEqKnownDevicesEmpty =>
|
||
'まだオーディオデバイスが登録されていません。デバイスを接続して始めましょう。';
|
||
|
||
@override
|
||
String advancedEqDevicePresetLabel(Object presetName) {
|
||
return 'プリセット: $presetName';
|
||
}
|
||
|
||
@override
|
||
String preNoticeCountdown(int minutes) {
|
||
return '$minutes分後に開始';
|
||
}
|
||
|
||
@override
|
||
String snoozeCountdown(int minutes) {
|
||
return '$minutes分後に鳴ります';
|
||
}
|
||
|
||
@override
|
||
String get snoozeAgainAction => 'もう一度スヌーズ';
|
||
|
||
@override
|
||
String get alarmRingingNotificationTitle => 'PluriWave アラーム';
|
||
|
||
@override
|
||
String get alarmFireChannelName => '鳴っているアラーム';
|
||
|
||
@override
|
||
String get alarmFireChannelDescription => '音楽アラームが鳴るときの緊急の音と画面';
|
||
|
||
@override
|
||
String get alarmPreNoticeChannelName => 'アラームの事前通知';
|
||
|
||
@override
|
||
String get alarmPreNoticeChannelDescription => 'アラーム前のサイレント通知';
|
||
|
||
@override
|
||
String get openFolderChooserTitle => 'フォルダを開く';
|
||
|
||
@override
|
||
String get openRecordingChooserTitle => '録音を開く';
|
||
|
||
@override
|
||
String get eqDeviceEditTitle => 'デバイスを編集';
|
||
|
||
@override
|
||
String get eqDeviceNameLabel => 'デバイス名';
|
||
|
||
@override
|
||
String get eqDeviceNameHint => '例:リビングのスピーカー';
|
||
|
||
@override
|
||
String get eqDeviceNameConfirm => '保存';
|
||
|
||
@override
|
||
String get eqDeviceConnected => '接続中';
|
||
|
||
@override
|
||
String get eqDeviceActiveOutput => 'この機器から音声が出力されています';
|
||
|
||
@override
|
||
String get eqDeviceRemove => '機器を削除';
|
||
|
||
@override
|
||
String eqDeviceRemoved(Object device) {
|
||
return '$device を削除しました';
|
||
}
|
||
|
||
@override
|
||
String get localMusicSectionTitle => 'ローカル音楽(Android Auto)';
|
||
|
||
@override
|
||
String get localMusicSectionDescription =>
|
||
'この端末のフォルダーを選択して、車内でその音声ファイルを閲覧・再生します。';
|
||
|
||
@override
|
||
String get localMusicFolderNotConfigured => 'フォルダーが選択されていません';
|
||
|
||
@override
|
||
String get localMusicFolderTitle => 'ローカル音楽フォルダー';
|
||
|
||
@override
|
||
String get localMusicChoosePath => 'フォルダーを選択';
|
||
|
||
@override
|
||
String get localMusicChangePath => 'フォルダーを変更';
|
||
|
||
@override
|
||
String get localMusicFolderUpdated => 'ローカル音楽フォルダーを更新しました';
|
||
|
||
@override
|
||
String localMusicFolderSaveError(Object error) {
|
||
return 'フォルダーを保存できませんでした: $error';
|
||
}
|
||
|
||
@override
|
||
String get localMusicFolderGenericName => '選択したフォルダー';
|
||
|
||
@override
|
||
String get welcomeHeadline => 'あなたの世界を、ライブで';
|
||
|
||
@override
|
||
String get welcomeBody => '238か国、53,412局のラジオ。お気に入りを保存して車に持ち出し、それで目を覚まそう。';
|
||
|
||
@override
|
||
String get welcomeBullet1Title => '局ごとのイコライザー';
|
||
|
||
@override
|
||
String get welcomeBullet1Subtitle => 'さらに出力デバイスごとのプリセット';
|
||
|
||
@override
|
||
String get welcomeBullet2Title => 'Android Auto';
|
||
|
||
@override
|
||
String get welcomeBullet2Subtitle => '車の中でお気に入りとローカル音楽を';
|
||
|
||
@override
|
||
String get welcomeBullet3Title => '音楽アラーム';
|
||
|
||
@override
|
||
String get welcomeBullet3Subtitle => '音量の緩やかな上昇と休暇モード付き';
|
||
|
||
@override
|
||
String get welcomeCtaLabel => '聴き始める';
|
||
|
||
@override
|
||
String get eqCustomActionEnableLabel => 'イコライザーをオンにする';
|
||
|
||
@override
|
||
String get eqCustomActionDisableLabel => 'イコライザーをオフにする';
|
||
|
||
@override
|
||
String eqCustomActionPresetLabel(String preset) {
|
||
return 'プリセット: $preset';
|
||
}
|
||
|
||
@override
|
||
String get alarmCardVacationPausedBadge => '休暇のため一時停止中';
|
||
|
||
@override
|
||
String get alarmCardSchedulingFailedMessage =>
|
||
'このアラームはシステムに登録できなかったため、鳴らない可能性があります。';
|
||
|
||
@override
|
||
String get alarmCardPreNoticeFailedMessage =>
|
||
'このアラームは設定されていますが、事前通知を設定できませんでした。';
|
||
|
||
@override
|
||
String get alarmDiagnosticsExactAlarmsTitle => '正確なアラームのスケジュール設定';
|
||
|
||
@override
|
||
String get alarmDiagnosticsExactAlarmsHint =>
|
||
'スマートフォンがスリープ中でも、設定した時刻ちょうどにアラームを鳴らせるようにします。';
|
||
|
||
@override
|
||
String get alarmDiagnosticsNotificationsTitle => '通知';
|
||
|
||
@override
|
||
String get alarmDiagnosticsNotificationsHint => 'アラームと事前通知を表示するために必要です。';
|
||
|
||
@override
|
||
String get alarmDiagnosticsFullScreenTitle => 'アラームのフルスクリーン表示';
|
||
|
||
@override
|
||
String get alarmDiagnosticsFullScreenHint =>
|
||
'画面がロックされていても、アラーム画面が自動的に表示されるようにします。';
|
||
|
||
@override
|
||
String get alarmDiagnosticsBatteryTitle => 'バッテリーの最適化';
|
||
|
||
@override
|
||
String get alarmDiagnosticsBatteryHint =>
|
||
'システムがPluriWaveをバックグラウンドで終了しないようにし、アラームが確実に鳴るようにします。';
|
||
|
||
@override
|
||
String get alarmDiagnosticsNativeCountTitle => 'Androidに登録されているアラーム';
|
||
|
||
@override
|
||
String alarmDiagnosticsNativeCountValue(int count) {
|
||
return '現在登録されている数: $count';
|
||
}
|
||
|
||
@override
|
||
String get alarmDiagnosticsNativeCountAttentionHint =>
|
||
'アラームは有効になっていますが、まだシステムに登録されていません。PluriWaveを開き直すか、まず上の項目を確認してください。';
|
||
|
||
@override
|
||
String get alarmDiagnosticsManufacturerLabel => '製造元';
|
||
|
||
@override
|
||
String get alarmDiagnosticsSdkLabel => 'Androidのバージョン(SDK)';
|
||
|
||
@override
|
||
String get alarmDiagnosticsNeedsAttentionStatus => '確認が必要です';
|
||
|
||
@override
|
||
String get alarmDiagnosticsAutostartTitle => 'この端末でのもう一つの手動設定';
|
||
|
||
@override
|
||
String alarmDiagnosticsAutostartBody(String manufacturer) {
|
||
return '$manufacturerのスマートフォンは、バッテリーを節約するためにバックグラウンドのアプリを終了させることがよくあります。PluriWaveが自動でオンにできる設定はありません。PluriWaveの自動起動(「オートスタート」や「バックグラウンド動作」と呼ばれることもあります)を、自分で有効にする必要があります。設定内のアプリまたはバッテリーの項目、あるいは端末のセキュリティアプリを確認してください。';
|
||
}
|
||
|
||
@override
|
||
String get alarmDiagnosticsFixAction => '修正する';
|
||
|
||
@override
|
||
String get alarmDiagnosticsIntentUnavailable =>
|
||
'この端末では設定画面を開けませんでした。設定アプリ内で手動で探してみてください。';
|
||
|
||
@override
|
||
String get alarmDiagnosticsUnavailableHint => 'アラームの設定をまだ確認できていません。';
|
||
|
||
@override
|
||
String get autoEqDisableOption => '無効化';
|
||
|
||
@override
|
||
String get funcionPremium => 'プレミアム機能';
|
||
|
||
@override
|
||
String get limiteAlarmasAlcanzado => '無料プランのアラーム上限(5件)に達しました。';
|
||
|
||
@override
|
||
String get desbloquearPremium => 'プレミアムを解除';
|
||
|
||
@override
|
||
String get restaurarCompras => '購入を復元';
|
||
}
|