diff --git a/java/com/android/dialer/app/res/values-ar-rSA/cr_strings.xml b/java/com/android/dialer/app/res/values-ar-rSA/cr_strings.xml
new file mode 100644
index 0000000..605ec65
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-ar-rSA/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">إعدادات أخرى</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">تسجيل تلقائي للمكالمات</string>
+    <string name="auto_call_recording_summary">التسجيل التلقائي للمكالمات الداخلة والخارجة</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">تعطيل مستشعر التقارب</string>
+    <string name="disable_proximity_sensor_summary">لا تقم بإيقاف تشغيل الشاشة و اللمس خلال المكالمة بناءً على مستشعر القرب</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">خيارات أخرى</string>
+    <string name="smart_mute_title">كتم الصوت الذكي</string>
+    <string name="smart_mute_summary">كتم المكالمات المستلمة بقلب الجهاز</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">الصورة بكامل الشاشة</string>
+    <string name="fullscreen_caller_photo_summary">عرض صورة ملء الشاشة للمكالمات الواردة والصادرة</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">إشعار ما بعد المكالمة</string>
+    <string name="enable_post_call_summary">تفعيل إشعارات بعد الإتصال في أسفل الشاشة</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-az-rAZ/cr_strings.xml b/java/com/android/dialer/app/res/values-az-rAZ/cr_strings.xml
new file mode 100644
index 0000000..7f19fa5
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-az-rAZ/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Başqa quraşdırmalar</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Auto call recording</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Yaxınlıq sensorunu söndür</string>
+    <string name="disable_proximity_sensor_summary">Toxunma ekranını və yaxınlıq sensoruna əsaslanan hüceyrə ekranını söndürməyin</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Digər seçimlər</string>
+    <string name="smart_mute_title">Ağıllı susdurma</string>
+    <string name="smart_mute_summary">Cihazı çevirərək gələn zəngi susdur</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Tam ekran şəkil</string>
+    <string name="fullscreen_caller_photo_summary">Gələn və gedən zənglər üçün tam ekran fotoşəkilini göstərin</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Üzən zəng çubuğunu göstərin</string>
+    <string name="enable_post_call_summary">Ekranın altındakı zəngdən sonra bildirişləri aktivləşdirin</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-be-rBY/cr_strings.xml b/java/com/android/dialer/app/res/values-be-rBY/cr_strings.xml
new file mode 100644
index 0000000..df47a23
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-be-rBY/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Іншыя налады</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Аўтаматычна запісваць размовы</string>
+    <string name="auto_call_recording_summary">Аўтаматычны запіс уваходных і выходных званкоў</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Адключыць датчык набліжэння</string>
+    <string name="disable_proximity_sensor_summary">Не выключаць сэнсарны экран і дысплэй падчас выкліку на аснове датчыка набліжэння</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Іншыя налады</string>
+    <string name="smart_mute_title">Разумнае адключэнне гуку</string>
+    <string name="smart_mute_summary">Адключаць гук уваходнага выкліку пераваротам прылады</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Фота на ўвесь экран</string>
+    <string name="fullscreen_caller_photo_summary">Адлюстроўваць фота на ўвесь экран для ўваходных і выходных выклікаў</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Апавяшчэнне пасля званка</string>
+    <string name="enable_post_call_summary">Уключыць апавяшчэння пасля званка ўнізе экрана</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-bg-rBG/cr_strings.xml b/java/com/android/dialer/app/res/values-bg-rBG/cr_strings.xml
new file mode 100644
index 0000000..92e0426
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-bg-rBG/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Други настройки</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Auto call recording</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Деактивиране на сензор за близост</string>
+    <string name="disable_proximity_sensor_summary">По време на разговор не изключва екрана, заради сензора за близост</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Други опции</string>
+    <string name="smart_mute_title">Умно заглушаване</string>
+    <string name="smart_mute_summary">Заглушете входящото обаждане като обърнете устройството си наопаки</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Снимка на цял екран</string>
+    <string name="fullscreen_caller_photo_summary">Показване на снимка на цял екран за входящи и изходящи повиквания</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Кратък анализ при край на обаждане</string>
+    <string name="enable_post_call_summary">Активира кратък анализ в долната част на екрана при край на обаждане</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-bn-rBD/cr_strings.xml b/java/com/android/dialer/app/res/values-bn-rBD/cr_strings.xml
new file mode 100644
index 0000000..17256a5
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-bn-rBD/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">অন্যান্য সেটিংস</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">অটো কল রেকর্ডিং</string>
+    <string name="auto_call_recording_summary">ইনকামিং এবং আউটগোয়িং কলের স্বয়ংক্রিয় রেকর্ডিং</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">প্রক্সিমিটি সেন্সর নিষ্ক্রিয় করুন</string>
+    <string name="disable_proximity_sensor_summary">কলে থাকার সময় প্রক্সিমিটি সেন্সরের উপর ভিত্তি করে টাচস্ক্রিন এবং ডিসপ্লে বন্ধ করবেন না</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">অন্য বিকল্পগুলি</string>
+    <string name="smart_mute_title">স্মার্ট নিঃশব্দ</string>
+    <string name="smart_mute_summary">ডিভাইসটি ফ্লিপ করে ইনকামিং কলটি মিউট করুন</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">ফুলস্ক্রিন ছবি</string>
+    <string name="fullscreen_caller_photo_summary">ইনকামিং এবং আউটগোয়িং কলের জন্য পূর্ণ-স্ক্রীন ফটো প্রদর্শন করুন</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title"></string>
+    <string name="enable_post_call_summary">স্ক্রিনের নীচে পোস্ট কল বিজ্ঞপ্তিগুলি সক্ষম করুন৷</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-ca-rES/cr_strings.xml b/java/com/android/dialer/app/res/values-ca-rES/cr_strings.xml
new file mode 100644
index 0000000..87efcfa
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-ca-rES/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Altres configuracions</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Enregistrament de trucades automàtic</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Desactiva el sensor de proximitat</string>
+    <string name="disable_proximity_sensor_summary">No apaguis la pantalla tàctil durant la trucada en funció del sensor de proximitat</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Altres opcions</string>
+    <string name="smart_mute_title">Silenci intel·ligent</string>
+    <string name="smart_mute_summary">Silencia les trucades entrants capgirant el dispositiu</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Foto a pantalla completa</string>
+    <string name="fullscreen_caller_photo_summary">Mostra la fotografia a pantalla completa en les trucades entrants i sortints</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Notificació emergent després de la trucada</string>
+    <string name="enable_post_call_summary">Habilita les notificacions de després de la trucada a la part inferior de la pantalla</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-cs-rCZ/cr_strings.xml b/java/com/android/dialer/app/res/values-cs-rCZ/cr_strings.xml
new file mode 100644
index 0000000..4c76f2c
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-cs-rCZ/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Další nastavení</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Automatické nahrávání hovorů</string>
+    <string name="auto_call_recording_summary">Automatické nahravání příchozích a odchozích hovorů</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Zakázat senzor přiblížení</string>
+    <string name="disable_proximity_sensor_summary">Na základě senzoru přiblížení nevypínat obrazovku ani dotykovou vrstvu během hovoru</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Další možnosti</string>
+    <string name="smart_mute_title">Inteligentní ztlumení</string>
+    <string name="smart_mute_summary">Ztlumit vyzvánění příchozího hovoru otočením zařízení</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fotka volajícího na celou obrazovku</string>
+    <string name="fullscreen_caller_photo_summary">Zobrazit fotografii na celou obrazovku v příchozích a odchozích hovorech</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Oznámení po volání</string>
+    <string name="enable_post_call_summary">Povolit oznámení po volání v dolní části obrazovky</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-da-rDK/cr_strings.xml b/java/com/android/dialer/app/res/values-da-rDK/cr_strings.xml
new file mode 100644
index 0000000..4eb08d9
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-da-rDK/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Other settings</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Auto call recording</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Disable proximity sensor</string>
+    <string name="disable_proximity_sensor_summary">Do not turn off touchscreen and display in call based on proximity sensor</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Other options</string>
+    <string name="smart_mute_title">Smart mute</string>
+    <string name="smart_mute_summary">Mute the incoming call by flipping the device</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fullscreen photo</string>
+    <string name="fullscreen_caller_photo_summary">Display full-screen photo for incoming and outgoing calls</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Post call snackbar</string>
+    <string name="enable_post_call_summary">Enable post call notifications at the bottom of screen</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-de-rDE/cr_strings.xml b/java/com/android/dialer/app/res/values-de-rDE/cr_strings.xml
new file mode 100644
index 0000000..5873c15
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-de-rDE/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Weitere Einstellungen</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Automatische Anrufaufzeichnung</string>
+    <string name="auto_call_recording_summary">Automatische Aufnahme von eingehenden und ausgehenden Anrufen</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Näherungssensor deaktivieren</string>
+    <string name="disable_proximity_sensor_summary">Bildschirm während eines Anrufs nicht automatisch mithilfe des Näherungssensors ausschalten</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Weitere Optionen</string>
+    <string name="smart_mute_title">Intelligentes Stummschalten</string>
+    <string name="smart_mute_summary">Eingehende Anrufe durch Umdrehen des Geräts stummschalten</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Vollbild-Foto</string>
+    <string name="fullscreen_caller_photo_summary">Vollbild-Foto bei ein- und ausgehenden Anrufen anzeigen</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Benachrichtigung nach dem Anruf</string>
+    <string name="enable_post_call_summary">Benachrichtigungen am unteren Bildschirmrand nach einem Anruf aktivieren</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-el-rGR/cr_strings.xml b/java/com/android/dialer/app/res/values-el-rGR/cr_strings.xml
new file mode 100644
index 0000000..9de104a
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-el-rGR/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Άλλες ρυθμίσεις</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Αυτόματη καταγραφή κλήσεων</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Απενεργοποίηση αισθητήρα εγγύτητας</string>
+    <string name="disable_proximity_sensor_summary">Διατήρηση αφής και οθόνης κατά την κλήση με βάση τον αισθητήρα εγγύτητας</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Άλλες επιλογές</string>
+    <string name="smart_mute_title">Έξυπνη σίγαση</string>
+    <string name="smart_mute_summary">Σιγήστε την εισερχόμενη κλήση αναποδογυρίζοντας την συσκευή σας</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Φωτογραφία πλήρους οθόνης</string>
+    <string name="fullscreen_caller_photo_summary">Εμφάνιση φωτογραφίας του συνομιλητή σε πλήρη οθόνης στις εισερχόμενες και εξερχόμενες κλήσεις</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Μπάρα snack μετά την κλήση</string>
+    <string name="enable_post_call_summary">Ενεργοποίηση ειδοποιήσεων στο κάτω μέρος της οθόνης μετά την κλήση</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-es-rES/cr_strings.xml b/java/com/android/dialer/app/res/values-es-rES/cr_strings.xml
new file mode 100644
index 0000000..f00fdfe
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-es-rES/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Otras configuraciones</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Grabación automática de llamadas</string>
+    <string name="auto_call_recording_summary">Grabación automática de llamadas entrantes y salientes</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Deshabilitar sensor de proximidad</string>
+    <string name="disable_proximity_sensor_summary">No apagar touch y pantalla durante llamadas mediante sensor de proximidad</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Otras opciones</string>
+    <string name="smart_mute_title">Silencio inteligente</string>
+    <string name="smart_mute_summary">Silenciar las llamadas entrantes volteando el dispositivo</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Foto a pantalla completa</string>
+    <string name="fullscreen_caller_photo_summary">Mostrar foto en pantalla completa para llamadas entrantes y salientes</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Mensaje emergente Post-llamada</string>
+    <string name="enable_post_call_summary">Habilitar notificaciones post-llamadas en la parte inferior de la pantalla</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-es-rVE/cr_strings.xml b/java/com/android/dialer/app/res/values-es-rVE/cr_strings.xml
new file mode 100644
index 0000000..e803964
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-es-rVE/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Otros ajustes</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Grabación automática de llamadas</string>
+    <string name="auto_call_recording_summary">Grabación automática de llamadas entrantes y salientes</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Desactivar sensor de proximidad</string>
+    <string name="disable_proximity_sensor_summary">No apagar la pantalla durante llamadas mediante el sensor de proximidad</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Otras opciones</string>
+    <string name="smart_mute_title">Silencio inteligente</string>
+    <string name="smart_mute_summary">Silenciar la llamada entrante volteando el dispositivo</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Foto a pantalla completa</string>
+    <string name="fullscreen_caller_photo_summary">Mostrar foto a pantalla completa para llamadas entrantes y salientes</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Menseje emergente post llamada</string>
+    <string name="enable_post_call_summary">Habilitar notificaciones post llamadas en la parte inferior de la pantalla</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-et-rEE/cr_strings.xml b/java/com/android/dialer/app/res/values-et-rEE/cr_strings.xml
new file mode 100644
index 0000000..36897be
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-et-rEE/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Teised seaded</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Automaatne kõnesalvestus</string>
+    <string name="auto_call_recording_summary">Automaatne sissetulevate ja väljuvate kõnede salvestus</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Keela lähedussensor</string>
+    <string name="disable_proximity_sensor_summary">Ära lülita lähedussensorit kontrollides puuteekraani kõne ajal välja</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Teised valikud</string>
+    <string name="smart_mute_title">Tark vaigistus</string>
+    <string name="smart_mute_summary">Seadme ümberpööramine vaigistab sissetuleva kõne</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Täisekraanis foto</string>
+    <string name="fullscreen_caller_photo_summary">Kuva täisekraanis foto sissetulevate ja väljuvate kõnede jaoks</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Kõnejärgne hüpik</string>
+    <string name="enable_post_call_summary">Luba kõnejärgsed teatised ekraani allosas</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-fa-rIR/cr_strings.xml b/java/com/android/dialer/app/res/values-fa-rIR/cr_strings.xml
new file mode 100644
index 0000000..fc350d9
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-fa-rIR/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">دیگر تنظیمات</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">ضبط تماس بصورت خودکار</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">غیرفعال کردن سنسور مجاورت</string>
+    <string name="disable_proximity_sensor_summary">هنگام تماس بر اساس حسگر مجاورت، صفحه لمسی و نمایشگر را خاموش نکنید</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">گزینه های دیگر</string>
+    <string name="smart_mute_title">بی‌صدا کردن هوشمند</string>
+    <string name="smart_mute_summary">بی‌صدا کردن تماس ورودی با چرخش دستگاه</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">عکس تمام‌صفحه</string>
+    <string name="fullscreen_caller_photo_summary">نمایش عکس تمام‌صفحه در تماس‌های ورودی و خروجی</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">نوار اسنک تماس پستی</string>
+    <string name="enable_post_call_summary">فعال کردن اعلامیه های تماس پستی در پایین صفحه نمایش</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-fi-rFI/cr_strings.xml b/java/com/android/dialer/app/res/values-fi-rFI/cr_strings.xml
new file mode 100644
index 0000000..4eb08d9
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-fi-rFI/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Other settings</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Auto call recording</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Disable proximity sensor</string>
+    <string name="disable_proximity_sensor_summary">Do not turn off touchscreen and display in call based on proximity sensor</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Other options</string>
+    <string name="smart_mute_title">Smart mute</string>
+    <string name="smart_mute_summary">Mute the incoming call by flipping the device</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fullscreen photo</string>
+    <string name="fullscreen_caller_photo_summary">Display full-screen photo for incoming and outgoing calls</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Post call snackbar</string>
+    <string name="enable_post_call_summary">Enable post call notifications at the bottom of screen</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-fr-rFR/cr_strings.xml b/java/com/android/dialer/app/res/values-fr-rFR/cr_strings.xml
new file mode 100644
index 0000000..07d0e4e
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-fr-rFR/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Paramètres supplémentaires</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Enregistrement d\'appel automatique</string>
+    <string name="auto_call_recording_summary">Enregistrement automatique des appels entrants et sortants</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Désactiver le capteur de proximité</string>
+    <string name="disable_proximity_sensor_summary">Ne pas éteindre l\'écran tactile et l\'affichage en cours d\'appels en fonction de la proximité</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Autres options</string>
+    <string name="smart_mute_title">Muet intelligent</string>
+    <string name="smart_mute_summary">Couper le son de l\'appel entrant en retournant l\'appareil</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Mode plein écran</string>
+    <string name="fullscreen_caller_photo_summary">Afficher la photo en plein écran pour les appels entrants et sortants</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Notifications après un appel</string>
+    <string name="enable_post_call_summary">Activer les notifications de rappel au bas de l\'écran</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-hr-rHR/cr_strings.xml b/java/com/android/dialer/app/res/values-hr-rHR/cr_strings.xml
new file mode 100644
index 0000000..0511140
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-hr-rHR/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Ostale postavke</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Automatsko snimanje poziva</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Onemogući senzor blizine</string>
+    <string name="disable_proximity_sensor_summary">Ne isključuj zaslon i prikaz u pozivu na temelju senzora blizine</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Ostale postavke</string>
+    <string name="smart_mute_title">Pametno utišavanje</string>
+    <string name="smart_mute_summary">Utišajte dolazni poziv okretanjem uređaja</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Prikaz fotografije na cijelom zaslonu</string>
+    <string name="fullscreen_caller_photo_summary">Prikaži fotografiju preko cijelog zaslona za dolazne i odlazne pozive</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Post call snackbar</string>
+    <string name="enable_post_call_summary">Omogući obavijesti nakon poziva na dnu zaslona</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-hu-rHU/cr_strings.xml b/java/com/android/dialer/app/res/values-hu-rHU/cr_strings.xml
new file mode 100644
index 0000000..0bcba9b
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-hu-rHU/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Egyéb beállítások</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Automatikus hívásrögzítés</string>
+    <string name="auto_call_recording_summary">Bejövő- és kimenő hívások automata rögzítése</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Közelségi érzékelő kikapcsolása</string>
+    <string name="disable_proximity_sensor_summary">Ne kapcsolja ki az érintő képernyőt és a képernyőt a közelségi érzékelőn alapuló híváson</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Egyéb beállítások</string>
+    <string name="smart_mute_title">Okos némítás</string>
+    <string name="smart_mute_summary">Csörgés némítása a telefon megfordításával</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Teljes képernyős fotó</string>
+    <string name="fullscreen_caller_photo_summary">Teljes képernyős fotó használata kimenő és bejövő hívásokhoz</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Hívás utáni cím</string>
+    <string name="enable_post_call_summary">A hívás utáni értesítések bekapcsolása a képernyő aljára</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-in-rID/cr_strings.xml b/java/com/android/dialer/app/res/values-in-rID/cr_strings.xml
new file mode 100644
index 0000000..6c2a401
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-in-rID/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Pengaturan lainnya</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Perekam panggilan otomatis</string>
+    <string name="auto_call_recording_summary">Perekaman otomatis panggilan masuk dan keluar</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Nonaktifkan sensor jarak</string>
+    <string name="disable_proximity_sensor_summary">Jangan matikan layar sentuh dan tampilan berdasarkan sensor jarak</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Opsi lainnya</string>
+    <string name="smart_mute_title">Bisukan Cerdas</string>
+    <string name="smart_mute_summary">Bisukan panggilan masuk dengan membalik perangkat</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Foto layar penuh</string>
+    <string name="fullscreen_caller_photo_summary">Tampilkan foto layar penuh untuk panggilan masuk dan panggilan keluar</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Pos panggilan mengambang</string>
+    <string name="enable_post_call_summary">Aktifkan notifikasi panggilan pos di bagian bawah layar</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-it-rIT/cr_strings.xml b/java/com/android/dialer/app/res/values-it-rIT/cr_strings.xml
new file mode 100644
index 0000000..7bbb933
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-it-rIT/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Altre impostazioni</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Registrazione chiamate automatica</string>
+    <string name="auto_call_recording_summary">Registrazione automatica chiamate in entrata e in uscita</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Disabilita sensore di prossimità</string>
+    <string name="disable_proximity_sensor_summary">Non disattivare touchscreen e display durante una chiamata in base al sensore di prossimità</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Altre opzioni</string>
+    <string name="smart_mute_title">Silenzia in modo intelligente</string>
+    <string name="smart_mute_summary">Silenzia la chiamata in arrivo capovolgendo il dispositivo</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Foto a schermo intero</string>
+    <string name="fullscreen_caller_photo_summary">Visualizza la foto a schermo intero per le chiamate in entrata e in uscita</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Barra pop-up dopo la chiamata</string>
+    <string name="enable_post_call_summary">Attiva notifiche post-chiamata nella parte inferiore dello schermo</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-iw-rIL/cr_strings.xml b/java/com/android/dialer/app/res/values-iw-rIL/cr_strings.xml
new file mode 100644
index 0000000..e37edef
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-iw-rIL/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">הגדרות נוספות</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">הקלטת שיחה אוטומטית</string>
+    <string name="auto_call_recording_summary">הקלטה אוטומטית של שיחות נכנסות ויוצאות</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">ביטול חיישן קרבה</string>
+    <string name="disable_proximity_sensor_summary">אל תכבה את המסך ומסך המגע בזמן שיחה על בסיס חיישן קרבה</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">אפשרויות נוספות</string>
+    <string name="smart_mute_title">השתקה חכמה</string>
+    <string name="smart_mute_summary">השתק שיחה נכנסת בהיפוך הטלפון</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">תמונה במסך מלא</string>
+    <string name="fullscreen_caller_photo_summary">להציג תמונה במסך מלא בשיחות נכנסות ויוצאות</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">פעולה אחרי השיחה</string>
+    <string name="enable_post_call_summary">אפשר הודעות אחרי השיחה בתחתית המסך</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-ja-rJP/cr_strings.xml b/java/com/android/dialer/app/res/values-ja-rJP/cr_strings.xml
new file mode 100644
index 0000000..700ece9
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-ja-rJP/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">その他の設定</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">通話を自動的に録音する</string>
+    <string name="auto_call_recording_summary">着信と発信の自動記録</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">近接センサーを無効化</string>
+    <string name="disable_proximity_sensor_summary">近接センサーが有効でも通話中にタッチパネルを消灯しない</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">その他のオプション</string>
+    <string name="smart_mute_title">スマートミュート</string>
+    <string name="smart_mute_summary">端末を裏返しにして着信をミュートする</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">全画面の写真</string>
+    <string name="fullscreen_caller_photo_summary">電話の着信や発信時に全画面の写真を表示する</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">通話後のスナックバー</string>
+    <string name="enable_post_call_summary">画面の下部に通話後の通知を表示します</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-ko-rKR/cr_strings.xml b/java/com/android/dialer/app/res/values-ko-rKR/cr_strings.xml
new file mode 100644
index 0000000..a489e70
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-ko-rKR/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">기타 설정</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">자동 통화 녹음</string>
+    <string name="auto_call_recording_summary">받는 전화와 거는 전화를 자동으로 녹음</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">근접센서 비활성화</string>
+    <string name="disable_proximity_sensor_summary">통화 시 근접센서를 통한 터치스크린과 화면 꺼짐을 비활성화합니다</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">기타 옵션</string>
+    <string name="smart_mute_title">스마트 음소거</string>
+    <string name="smart_mute_summary">디바이스를 뒤집어 수신전화 벨소리 끄기</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">전체 화면 사진</string>
+    <string name="fullscreen_caller_photo_summary">수발신 통화에 전체 화면 사진 표시</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">통화 후 하단알림</string>
+    <string name="enable_post_call_summary">화면 맨아래에 통화 후 알림을 활성화합니다</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-ku-rTR/cr_strings.xml b/java/com/android/dialer/app/res/values-ku-rTR/cr_strings.xml
new file mode 100644
index 0000000..4eb08d9
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-ku-rTR/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Other settings</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Auto call recording</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Disable proximity sensor</string>
+    <string name="disable_proximity_sensor_summary">Do not turn off touchscreen and display in call based on proximity sensor</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Other options</string>
+    <string name="smart_mute_title">Smart mute</string>
+    <string name="smart_mute_summary">Mute the incoming call by flipping the device</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fullscreen photo</string>
+    <string name="fullscreen_caller_photo_summary">Display full-screen photo for incoming and outgoing calls</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Post call snackbar</string>
+    <string name="enable_post_call_summary">Enable post call notifications at the bottom of screen</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-nl-rNL/cr_strings.xml b/java/com/android/dialer/app/res/values-nl-rNL/cr_strings.xml
new file mode 100644
index 0000000..f1bb4eb
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-nl-rNL/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Overige instellingen</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Automatische gespreks-opname</string>
+    <string name="auto_call_recording_summary">Automatisch opnemen van inkomende en uitgaande oproepen</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Nabijheidssensor uitschakelen</string>
+    <string name="disable_proximity_sensor_summary">Schakel touchscreen en scherm tijdens gesprek niet uit op basis van nabijheidssensor</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Overige opties</string>
+    <string name="smart_mute_title">Slim dempen</string>
+    <string name="smart_mute_summary">Demp inkomende oproep door het apparaat om te keren</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Foto op volledig scherm</string>
+    <string name="fullscreen_caller_photo_summary">Toon foto op volledig scherm voor inkomende en uitgaande oproepen</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Notificaties na de oproep</string>
+    <string name="enable_post_call_summary">Notificaties na het gesprek toestaan aan de onderkant van het scherm</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-pl-rPL/cr_strings.xml b/java/com/android/dialer/app/res/values-pl-rPL/cr_strings.xml
new file mode 100644
index 0000000..1d6e62e
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-pl-rPL/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Inne ustawienia</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Automatyczne nagrywanie połączeń</string>
+    <string name="auto_call_recording_summary">Automatyczne nagrywanie połączeń przychodzących i wychodzących</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Wyłącz czujnik zbliżeniowy</string>
+    <string name="disable_proximity_sensor_summary">Nie wyłączaj ekranu dotykowego i wyświetlacza w trakcie połączenia</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Inne opcje</string>
+    <string name="smart_mute_title">Inteligentne wyciszanie</string>
+    <string name="smart_mute_summary">Wycisz połączenia przychodzące poprzez odwrócenie urządzenia</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Zdjęcie na pełen ekran</string>
+    <string name="fullscreen_caller_photo_summary">Wyświetl zdjęcie na pełnym ekranie dla połączeń przychodzących oraz wychodzących</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Pokaż połączenie na snackbarze</string>
+    <string name="enable_post_call_summary">Włącz powiadomienia o połączeniach w dolnej części ekranu</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-pt-rBR/cr_strings.xml b/java/com/android/dialer/app/res/values-pt-rBR/cr_strings.xml
new file mode 100644
index 0000000..45b67d5
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-pt-rBR/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Outras configurações</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Gravação automática de chamadas</string>
+    <string name="auto_call_recording_summary">Gravação automática de chamadas recebidas e efetuadas</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Desativar sensor de proximidade</string>
+    <string name="disable_proximity_sensor_summary">Não apaga a tela durante a chamada com base no sensor de proximidade</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Outras opções</string>
+    <string name="smart_mute_title">Modo silencioso inteligente</string>
+    <string name="smart_mute_summary">Silenciar chamada recebida virando o dispositivo para baixo</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Foto em tela cheia</string>
+    <string name="fullscreen_caller_photo_summary">Exibir foto em tela cheia quando receber ou fazer chamadas</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Snackbar pós-chamada</string>
+    <string name="enable_post_call_summary">Ativar notificações pós-chamada na parte inferior da tela</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-pt-rPT/cr_strings.xml b/java/com/android/dialer/app/res/values-pt-rPT/cr_strings.xml
new file mode 100644
index 0000000..94f3a5a
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-pt-rPT/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Outras definições</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Gravação automática de chamadas</string>
+    <string name="auto_call_recording_summary">Gravação automática de chamadas recebidas e efetuadas</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Desativar sensor de proximidade</string>
+    <string name="disable_proximity_sensor_summary">Durante uma chamada o ecrã não é desligado com base no sensor de proximidade</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Outras opções</string>
+    <string name="smart_mute_title">Silenciar inteligente</string>
+    <string name="smart_mute_summary">Silenciar o toque da chamada ao virar o dispositivo</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Foto de ecrã inteiro</string>
+    <string name="fullscreen_caller_photo_summary">Exibir foto de ecrã inteiro para chamadas recebidas e efetuadas</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Snackbar pós-chamada</string>
+    <string name="enable_post_call_summary">Ativar notificações pós-chamada no fundo do ecrã</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-ro-rRO/cr_strings.xml b/java/com/android/dialer/app/res/values-ro-rRO/cr_strings.xml
new file mode 100644
index 0000000..b7e2618
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-ro-rRO/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Alte setări</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Înregistrare automată a apelurilor</string>
+    <string name="auto_call_recording_summary">Înregistrare automată a apelurilor primite și efectuate</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Dezactivează senzorul de proximitate</string>
+    <string name="disable_proximity_sensor_summary">Nu dezactivați ecranul tactil și nu afișați în apel în funcție de senzorul de proximitate</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Alte opțiuni</string>
+    <string name="smart_mute_title">Mod fără sunet inteligent</string>
+    <string name="smart_mute_summary">Oprește apelul de intrare prin rotirea dispozitivului</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fotografie ecran complet</string>
+    <string name="fullscreen_caller_photo_summary">Afișează fotografia pe tot ecranul pentru apelurile primite și trimise</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Bară sumar apeluri</string>
+    <string name="enable_post_call_summary">Activează notificările pentru apeluri în partea de jos a ecranului</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-ru-rRU/cr_strings.xml b/java/com/android/dialer/app/res/values-ru-rRU/cr_strings.xml
new file mode 100644
index 0000000..bcb69c4
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-ru-rRU/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Прочие настройки</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Автозапись вызова</string>
+    <string name="auto_call_recording_summary">Автоматическая запись входящих и исходящих разговоров</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Отключить датчик приближения</string>
+    <string name="disable_proximity_sensor_summary">Не отключть экран, сенсорный экран и не использовать датчик приближения во время вызова</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Другие настройки</string>
+    <string name="smart_mute_title">Умное отключение звука</string>
+    <string name="smart_mute_summary">Отключить звук входящего вызова при перевороте телефона</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Полноэкранное фото</string>
+    <string name="fullscreen_caller_photo_summary">Показывать полноэкранное фото при входящих и исходящих вызовах</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Уведомление после звонка</string>
+    <string name="enable_post_call_summary">Показывать уведомление после звонка в нижней части экрана</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-sk-rSK/cr_strings.xml b/java/com/android/dialer/app/res/values-sk-rSK/cr_strings.xml
new file mode 100644
index 0000000..f66533d
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-sk-rSK/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Ďalšie nastavenia</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Automatické nahrávanie hovorov</string>
+    <string name="auto_call_recording_summary">Automatické nahrávanie prichádzajúcich a odchádzajúcich hovorov</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Vypnúť snímač vzdialenosti</string>
+    <string name="disable_proximity_sensor_summary">Nevypínať dotykovú obrazovku a displej počas hovoru založeného na snímači vzdialenosti</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Ďalšie možnosti</string>
+    <string name="smart_mute_title">Inteligentné stíšenie</string>
+    <string name="smart_mute_summary">Stlmiť vyzváňanie prichádzajúceho hovoru otočením zariadenia</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fotografia na celú obrazovku</string>
+    <string name="fullscreen_caller_photo_summary">Zobraziť fotografiu na celú obrazovku pri prichádzajúcich a odchádzajúcich hovoroch</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Oznámenie po volaní</string>
+    <string name="enable_post_call_summary">Povoliť oznámenie po volaní v dolnej časti obrazovky</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-sl-rSI/cr_strings.xml b/java/com/android/dialer/app/res/values-sl-rSI/cr_strings.xml
new file mode 100644
index 0000000..4eb08d9
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-sl-rSI/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Other settings</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Auto call recording</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Disable proximity sensor</string>
+    <string name="disable_proximity_sensor_summary">Do not turn off touchscreen and display in call based on proximity sensor</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Other options</string>
+    <string name="smart_mute_title">Smart mute</string>
+    <string name="smart_mute_summary">Mute the incoming call by flipping the device</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fullscreen photo</string>
+    <string name="fullscreen_caller_photo_summary">Display full-screen photo for incoming and outgoing calls</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Post call snackbar</string>
+    <string name="enable_post_call_summary">Enable post call notifications at the bottom of screen</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-sr-rCS/cr_strings.xml b/java/com/android/dialer/app/res/values-sr-rCS/cr_strings.xml
new file mode 100644
index 0000000..551afee
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-sr-rCS/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Ostala podešavanja</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Automatsko snimanje poziva</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Ugasiti senzor blizine</string>
+    <string name="disable_proximity_sensor_summary">Do not turn off touchscreen and display in call based on proximity sensor</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Druge opcije</string>
+    <string name="smart_mute_title">Smart mute</string>
+    <string name="smart_mute_summary">Mute the incoming call by flipping the device</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fullscreen photo</string>
+    <string name="fullscreen_caller_photo_summary">Display full-screen photo for incoming and outgoing calls</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Post call snackbar</string>
+    <string name="enable_post_call_summary">Enable post call notifications at the bottom of screen</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-sr-rSP/cr_strings.xml b/java/com/android/dialer/app/res/values-sr-rSP/cr_strings.xml
new file mode 100644
index 0000000..4eb08d9
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-sr-rSP/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Other settings</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Auto call recording</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Disable proximity sensor</string>
+    <string name="disable_proximity_sensor_summary">Do not turn off touchscreen and display in call based on proximity sensor</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Other options</string>
+    <string name="smart_mute_title">Smart mute</string>
+    <string name="smart_mute_summary">Mute the incoming call by flipping the device</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fullscreen photo</string>
+    <string name="fullscreen_caller_photo_summary">Display full-screen photo for incoming and outgoing calls</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Post call snackbar</string>
+    <string name="enable_post_call_summary">Enable post call notifications at the bottom of screen</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-sv-rSE/cr_strings.xml b/java/com/android/dialer/app/res/values-sv-rSE/cr_strings.xml
new file mode 100644
index 0000000..2a9cdb8
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-sv-rSE/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Other settings</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Auto call recording</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Disable proximity sensor</string>
+    <string name="disable_proximity_sensor_summary">Do not turn off touchscreen and display in call based on proximity sensor</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Andra inställningar</string>
+    <string name="smart_mute_title">Smart tystning</string>
+    <string name="smart_mute_summary">Stäng av det inkommande samtalet genom att vända enheten</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fullskärmsläge</string>
+    <string name="fullscreen_caller_photo_summary">Visa helskärmsbild för inkommande och utgående samtal</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Post call snackbar</string>
+    <string name="enable_post_call_summary">Enable post call notifications at the bottom of screen</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-ta-rIN/cr_strings.xml b/java/com/android/dialer/app/res/values-ta-rIN/cr_strings.xml
new file mode 100644
index 0000000..045d5b9
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-ta-rIN/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Other settings</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Auto call recording</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Disable proximity sensor</string>
+    <string name="disable_proximity_sensor_summary">Do not turn off touchscreen and display in call based on proximity sensor</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">மற்ற விருப்பங்கள்</string>
+    <string name="smart_mute_title">Smart mute</string>
+    <string name="smart_mute_summary">கைபேசியை புரட்டுவதன் மூலம் உள்வரும் அழைப்பை அமைதிபடுத்தவும்</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fullscreen புகைப்படம்</string>
+    <string name="fullscreen_caller_photo_summary">Display full-screen photo for incoming and outgoing calls</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Post call snackbar</string>
+    <string name="enable_post_call_summary">Enable post call notifications at the bottom of screen</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-tr-rTR/cr_strings.xml b/java/com/android/dialer/app/res/values-tr-rTR/cr_strings.xml
new file mode 100644
index 0000000..ee39247
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-tr-rTR/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Diğer ayarlar</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Otomatik arama kaydı</string>
+    <string name="auto_call_recording_summary">Gelen ve giden aramaların otomatik olarak kaydedilmesi</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Yakınlık sensörünü devre dışı bırak</string>
+    <string name="disable_proximity_sensor_summary">Yakınlık sensörüne bağlı olarak çağrı sırasında ekranı kapatmayın</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Diğer seçenekler</string>
+    <string name="smart_mute_title">Akıllı sessizlik</string>
+    <string name="smart_mute_summary">Cihazı çevirerek gelen aramayı sessize alın</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Tam ekran fotoğraf</string>
+    <string name="fullscreen_caller_photo_summary">Gelen ve giden aramalar için tam ekran fotoğraf göster</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Çağrı kayan çubuğunu göster</string>
+    <string name="enable_post_call_summary">Ekranın altından arama sonrası bildirimlerini etkinleştir</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-uk-rUA/cr_strings.xml b/java/com/android/dialer/app/res/values-uk-rUA/cr_strings.xml
new file mode 100644
index 0000000..60ed750
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-uk-rUA/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Інші налаштування</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Автоматичний запис виклику</string>
+    <string name="auto_call_recording_summary">Автоматичний запис вхідних та вихідних дзвінків</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Вимкнути датчик наближення</string>
+    <string name="disable_proximity_sensor_summary">Не вимикати сенсорний екран і дисплей під час виклику за допомогою датчика наближення</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Інші налаштування</string>
+    <string name="smart_mute_title">Розумне авто-приглушування</string>
+    <string name="smart_mute_summary">Приглушити вхідний дзвінок, перевернувши телефон</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Повноекранне фото</string>
+    <string name="fullscreen_caller_photo_summary">Показувати повноекранне фото для вхідних і вихідних дзвінків</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Сповіщення після дзвінка</string>
+    <string name="enable_post_call_summary">Увімкнути сповіщення про виклик в нижній частині екрана</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-ur-rPK/cr_strings.xml b/java/com/android/dialer/app/res/values-ur-rPK/cr_strings.xml
new file mode 100644
index 0000000..4eb08d9
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-ur-rPK/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Other settings</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Auto call recording</string>
+    <string name="auto_call_recording_summary">Automatic recording of incoming and outgoing calls</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Disable proximity sensor</string>
+    <string name="disable_proximity_sensor_summary">Do not turn off touchscreen and display in call based on proximity sensor</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Other options</string>
+    <string name="smart_mute_title">Smart mute</string>
+    <string name="smart_mute_summary">Mute the incoming call by flipping the device</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Fullscreen photo</string>
+    <string name="fullscreen_caller_photo_summary">Display full-screen photo for incoming and outgoing calls</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Post call snackbar</string>
+    <string name="enable_post_call_summary">Enable post call notifications at the bottom of screen</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-vi-rVN/cr_strings.xml b/java/com/android/dialer/app/res/values-vi-rVN/cr_strings.xml
new file mode 100644
index 0000000..ba588c4
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-vi-rVN/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">Cài đặt khác</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">Tự động ghi âm cuộc gọi</string>
+    <string name="auto_call_recording_summary">Tất cả cuộc gọi được tự động ghi âm</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">Tắt cảm biến tiệm cận</string>
+    <string name="disable_proximity_sensor_summary">Màn hình sẽ không tắt khi đang có cuộc gọi</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">Tùy chọn khác</string>
+    <string name="smart_mute_title">Tắt tiếng thông minh</string>
+    <string name="smart_mute_summary">Úp điện thoại để tắt tiếng cuộc gọi đến</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">Ảnh toàn màn hình</string>
+    <string name="fullscreen_caller_photo_summary">Hiển thị hình ảnh người gọi toàn màn hình</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">Hiện cuộc gọi trên thanh tạm thời</string>
+    <string name="enable_post_call_summary">Bật thông tin cuộc gọi ở dưới cùng của màn hình</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-zh-rCN/cr_strings.xml b/java/com/android/dialer/app/res/values-zh-rCN/cr_strings.xml
new file mode 100644
index 0000000..d2bee81
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-zh-rCN/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">其他设置</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">自动录音</string>
+    <string name="auto_call_recording_summary">自动录制来电和呼出通话</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">禁用距离传感器</string>
+    <string name="disable_proximity_sensor_summary">基于距离传感器，在通话中不关闭触摸操作和屏幕显示</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">其他选项</string>
+    <string name="smart_mute_title">智能静音</string>
+    <string name="smart_mute_summary">来电时翻转设备以静音</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">全屏照片</string>
+    <string name="fullscreen_caller_photo_summary">通话呼入或呼出时显示全屏照片</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">通话结束后通知</string>
+    <string name="enable_post_call_summary">在屏幕底部启用呼叫通知</string>
+</resources>
diff --git a/java/com/android/dialer/app/res/values-zh-rTW/cr_strings.xml b/java/com/android/dialer/app/res/values-zh-rTW/cr_strings.xml
new file mode 100644
index 0000000..3a7e310
--- /dev/null
+++ b/java/com/android/dialer/app/res/values-zh-rTW/cr_strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016-2024 crDroid Android Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Preference titles -->
+    <string name="other_settings_label">其他設定</string>
+    <!-- Call recording -->
+    <string name="auto_call_recording_title">自動錄音</string>
+    <string name="auto_call_recording_summary">自動錄製來電與撥出通話</string>
+    <!-- Disable Proximity Options -->
+    <string name="disable_proximity_sensor_title">停用距離傳感器</string>
+    <string name="disable_proximity_sensor_summary">通話中將裝置靠近自己時不關閉螢幕</string>
+    <!-- Smart Options -->
+    <string name="smart_category_title">其他選項</string>
+    <string name="smart_mute_title">智慧靜音</string>
+    <string name="smart_mute_summary">翻轉裝置以使來電靜音</string>
+    <!-- Full Screen Caller Photo -->
+    <string name="fullscreen_caller_photo_title">全螢幕圖示</string>
+    <string name="fullscreen_caller_photo_summary">在撥出或收到來電時將圖示以全螢幕顯示</string>
+    <!-- Dialer postcall -->
+    <string name="enable_post_call_title">通話結束通知</string>
+    <string name="enable_post_call_summary">在通話結束之後於螢幕底部顯示通知</string>
+</resources>
