Programación
Localización personalizada e integración de IA para apps
Custom Localization and AI Integration for Apps
Implementa en una app SwiftUI una arquitectura de localización basada en las preferencias del usuario e independiente del idioma del teléfono, con LanguageManager, una pantalla de selección inicial y String Catalogs. Úsalo para enviar el idioma elegido en las solicitudes de IA y obtener respuestas en ese idioma.
- Probado con:
- GPT-4o
- Eficacia:
- 90/100
- Archivo de prompts
Versión en Español
Act as an App Localization Expert. You are tasked with setting up a user-preference-based localization architecture in an application independent of the phone's system language.
Your task includes:
1. **LanguageManager Class**: Create a `LanguageManager` class using the `ObservableObject` protocol. Store the user's selected language in `UserDefaults`, with the default language set to 'en' (English). Display a selection screen on the first launch.
2. **Global Locale Override**: Wrap the entire `ContentView` structure in your SwiftUI app with `.environment(\.locale, .init(identifier: languageManager.selectedLanguage))` to trigger translations based on the selected language in `LanguageManager`.
3. **Onboarding Language Selection**: If no language has been selected previously, show a stylish 'Language Selection' screen with English and Turkish options on app launch. Save the selection immediately and transition to the main screen.
4. **AI (LLM) Integration**: Add the user's selected language as a parameter in AI requests (API calls). Update the system prompt to: 'User's preferred language: ${selected_language}. Respond in this language.'
5. **String Catalogs**: Integrate `.stringxcatalog` into your project and add all existing hardcoded strings in English (base) and Turkish.
6. **Dynamic Update**: Ensure that changing the language in settings updates the UI without restarting the app.
7. **User Language Change**: Allow users to change the app's language dynamically at any time.
Rules:
- Ensure seamless user experience during language selection and updates.
- Test functionality for both English and Turkish languages.Rellena y ejecuta
Este prompt tiene 1 huecos. Rellénalos y montaremos el prompt final por ti.
Quedan 1 por rellenar
Prompt final
Act as an App Localization Expert. You are tasked with setting up a user-preference-based localization architecture in an application independent of the phone's system language.
Your task includes:
1. **LanguageManager Class**: Create a `LanguageManager` class using the `ObservableObject` protocol. Store the user's selected language in `UserDefaults`, with the default language set to 'en' (English). Display a selection screen on the first launch.
2. **Global Locale Override**: Wrap the entire `ContentView` structure in your SwiftUI app with `.environment(\.locale, .init(identifier: languageManager.selectedLanguage))` to trigger translations based on the selected language in `LanguageManager`.
3. **Onboarding Language Selection**: If no language has been selected previously, show a stylish 'Language Selection' screen with English and Turkish options on app launch. Save the selection immediately and transition to the main screen.
4. **AI (LLM) Integration**: Add the user's selected language as a parameter in AI requests (API calls). Update the system prompt to: 'User's preferred language: ${selected_language}. Respond in this language.'
5. **String Catalogs**: Integrate `.stringxcatalog` into your project and add all existing hardcoded strings in English (base) and Turkish.
6. **Dynamic Update**: Ensure that changing the language in settings updates the UI without restarting the app.
7. **User Language Change**: Allow users to change the app's language dynamically at any time.
Rules:
- Ensure seamless user experience during language selection and updates.
- Test functionality for both English and Turkish languages.- Abrir en ChatGPT (se abre en una pestaña nueva)
- Abrir en Claude (se abre en una pestaña nueva)
- Abrir en Gemini (se abre en una pestaña nueva)
Gemini no puede recibir el prompt por enlace, cópialo primero.
- Abrir en Perplexity (se abre en una pestaña nueva)
Se abre en una pestaña nueva con el prompt ya escrito. Puede que necesites iniciar sesión.
Cómo usar este prompt
- Sustituye todo lo que esté entre corchetes por tus propios datos antes de enviarlo.
- Los resultados varían según el modelo. Si la respuesta no encaja, prueba otro modelo o añade un ejemplo concreto.
- Envía el prompt en un solo mensaje. Dividirlo en varios turnos debilita las instrucciones.