Android Hedef Target Android 12 Hatası Çözümü
android:exported needs to be explicitly specified for element <activity#com.embarcadero.firemonkey.FMXNativeActivity>. Apps targeting Android 12 and higher are required to specify an explicit value for android:exported
when the corresponding component has an intent filter defined. See https://developer.android.com/guide/topics/manifest/activity-element#exported for details.
Bu hata mesajı, Delphi 12.3 ile Android 12 veya üzeri sürümler için uygulama geliştirirken, AndroidManifest.xml dosyanızda bazı activity
öğelerinde android:exported
niteliğinin eksik olduğunu bildiriyor.
Sorun Nedir?
Android 12 (API 31) itibarıyla, bir Activity
, Service
veya BroadcastReceiver
bileşeni eğer bir intent-filter
içeriyorsa, android:exported
niteliğinin açıkça tanımlanması zorunludur. Bu nitelik, bileşenin uygulama dışından erişilebilir olup olmadığını belirler.
hatanda belirtilen öğe:
<activity android:name="com.embarcadero.firemonkey.FMXNativeActivity" ...>
Bu aktivite bir intent-filter
içerdiği için, artık android:exported
özelliğini içermesi gerekiyor.
Ne Yapmalısın?
- AndroidManifest.template.xml dosyanı aç.
- Aşağıdaki gibi
FMXNativeActivity
için tanımlıactivity
öğesini bul:
<activity android:name="com.embarcadero.firemonkey.FMXNativeActivity"
android:label="@string/app_name"
android:configChanges="orientation|keyboardHidden|screenSize"
android:launchMode="singleTop">
Bu satıra android:exported="true"
(veya gerektiğinde false
) ekle:
<activity android:name="com.embarcadero.firemonkey.FMXNativeActivity"
android:label="@string/app_name"
android:configChanges="orientation|keyboardHidden|screenSize"
android:launchMode="singleTop"
android:exported="true">
Bu şekilde düzenleme yapıldığında hata ortadan Kalkar