There's a couple more things about
Android Build Variants that you should
know about, but you won't necessarily
need to use them very often.
Consider a game that contains
a great deal of drawable resources.
So many in fact that including
all the drawables for
every resolution would result
in an unacceptably large APK.
This would be an excellent time to use
product flavors, one for medium DPI and
one for high DPI.
Now, consider what happens if we
want to add free and paid flavors.
You'll want both a free and
paid medium DPI version, and a free and
paid high DPI version.
This comes out to four total flavors.
However, now if you want to include
additional functionality in
the paid version, for example,
you have to put it in two places.
One for the paid medium DPI and
one for the paid high DPI.
Now, suddenly we've lost all
the code release advantages of
using flavors in the first place.
Fortunately, the Android plug-in
supports the concept of flavor
dimensions to deal with this use case.
Just like the Android
plug-in will create tasks for
each combination of build type and
product flavor.
You will now be able to build every
possible permutation build type,
product flavor, and flavor dimension.
هناك بضعة أشياء أكثر حول
،تباين بنية Android يجب التعرف عليها
ولكن لن يلزم بالضرورة استخدامها
.في كثير من الأحيان
افترضوا أن لديكم لعبة تحتوي على
.كم كبير من الموارد المسؤولة عن الرسم
في الواقع، وبهذا المقدار، فإن تضمين
كافة الموارد المسؤولة عن الرسم لكل
دقة
.من شأنه إنتاج APK كبير بطريقة غير مقبولة
قد يكون هذا هو الوقت المناسب لاستخدام
،صفتين للمنتج؛ واحدة لنسبة DPI المتوسطة
.وأخرى لنسبة DPI المرتفعة
الآن، فكِّروا فيما يحدث إذا
.أردنا إضافة صفات مجانية ومدفوعة
سترغبون في إصدار DPI بنسبة متوسطة مجاني
وآخر مدفوع، وإصدار DPI بنسبة مرتفعة مجاني
.وآخر مدفوع
.ينتج عن ذلك أربع صفات تامة
ومع ذلك، إن أردتم الآن تضمين
وظيفة إضافية في
،الإصدار المدفوع، على سبيل المثال
.فعليكم وضعها في مكانين
،أحدهما لإصدار DPI بالنسبة المتوسطة المدفوع
.والآخر لإصدار DPI بالنسبة المرتفعة المدفوع
الآن، فقدنا فجأة كافة
مزايا إصدار التعليمات البرمجية
.لاستخدام الصفات في المكان الأول
لحسن الحظ، يدعم المكون الإضافي لـ Android
مفهوم أبعاد الصفة
.للتعامل مع حالة الاستخدام هذه
بالضبط مثلما يقوم المكون الإضافي لـ Android
بإنشاء مهام
لكل مجموعة من نوع البنية
.وصفة المنتج
والآن، بإمكانكم بناء كل ما هو
ممكن من نوع بنية الاختراق
.وصفة المنتج وبُعد الصفة
Tem outras coisas sobre variantes de
compilação do Android
que você deve saber,
mas que não precisará necessariamente
usá-las com frequência.
Vamos imaginar um jogo com
muitos recursos de desenhos.
Mas tantos, que incluir todos
os recursos de desenho para cada
resolução resultaria em um APK
de proporções inaceitáveis.
Essa seria uma boa hora para usar
"product flavors", um para MDPI e outro
para HDPI.
Agora, pense no que aconteceria se
quiséssemos adicionar
"flavors" gratuitos e pagos.
Você ia querer um gratuito
e um pago para a versão MDPI
e outro gratuito e pago para a versão HDPI.
Isso representaria quatro sabores.
Mas se você quisesse incluir
uma funcionalidade adicional
na versão paga, por exemplo,
teria que colocá-la em dois lugares.
Um para a MDPI paga
e outra para a HDPI paga.
De repente, perdemos
todas as vantagens de versão de
código que há em usar primeiro os "flavors".
Ainda bem que o plugin do Android
é compatível com o conceito de
"flavor dimensions"
para lidarmos com este caso de uso.
Da mesma forma que
o plugin do Android cria tarefas
para cada combinação
de tipo de compilação e "product flavor".
Agora você poderá compilar
todas as combinações possíveis de tipo de compilação
"product flavor"
e "flavor dimension".
您还应该了解关于
Android 构建变种的更多信息,
但您不一定要
经常使用它们。
考虑一个包含大量
可绘图资源的游戏。
事实上,为每个分辨率
包括所有可绘图资源
会导致令人无法接受
的巨大 APK。
这将是使用不同产品风格
的绝佳时机,一个用于中等 dpi,
一个用于中等 DPI。
现在,考虑如果我们要添加免费和付费
产品风格,会发生什么情况。
您还会需要免费和付费
中等 DPI 版本以及免费和
付费高 DPI 版本。
这样就会出现四种风格。
但是,比方说,如果您现在想要在
付费版本中包含
其他功能
则需要把它放在两个位置。
一个用于付费中等 DPI,
一个用于付费高 DPI。
现在,我们突然失去了
第一时间使用风格
的所有代码发布优势。
幸运的是,Android 插件支持
使用风格尺寸的概念
来处理此用例。
就像 Android
插件会为
构建类型和产品风格的
每个组合创建任务,
您现在将能够构建每种
可能的渗透构建类型、
产品风格和风格尺寸。