Слияние манифестов Android Studio 0.8.1 $ {applicationId} недоступно

#android #manifest

#Android #манифест

Вопрос:

В настоящее время я работаю над приложением, которое имеет несколько вариантов сборки, а также несколько разновидностей продукта, и в каждом варианте сборки суффикс имени пакета отличается. Я хочу использовать $ {applicationId}, чтобы у меня было несколько вариантов сборки, доступных на одном устройстве.

 <provider
            android:name="${applicationId}.providers.LocatorSearchSuggestionProvider"
            android:authorities="${applicationId}.providers.LocatorSearchSuggestionProvider" />
  

Я пробовал следующее, и это не работает. Я также пробовал packageName. Также в файлах build.gradle у меня есть applicationId, указанный в defaultConfig.

Редактировать: в настоящее время в AndroidManifest.xml файл, в котором я получаю ошибку не удается разрешить символ ‘$ {applicationId}’. также в моем файле build.gradle я включил applicationId

 android {
    compileSdkVersion 19
    buildToolsVersion '20.0.0'
    useOldManifestMerger false
    defaultConfig {
        applicationId 'com.sample.android.login'
        minSdkVersion 14
        targetSdkVersion 19
        versionCode 1
        versionName '1.0'
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
  

Был бы признателен за любую помощь в этом, спасибо!!!

Комментарии:

1. Что означает «это не работает»? Вы получаете сообщение об ошибке? Если да, пожалуйста, укажите это в своем вопросе.

2. Кроме того, для всех, у кого еще была такая проблема, я пытался задать имя broadprovider и использовать $ {applicationId} в поле name. Вместо этого мне пришлось использовать его в поле полномочий и работать как шарм. Проблема исправлена!

3. у вас есть какое-либо решение?

4. Мой комментарий выше предполагает, что я допустил ошибку, используя $ {applicationId} в неправильном поле, и должен был использовать это в поле полномочий трансляции. Пожалуйста, убедитесь, что вы используете $ {applicationId} в правильном поле.

5. @ahmad вы должны добавить свои комментарии в качестве правильного ответа — я почти пропустил решение, видя, что никто на него не ответил.