Pendahuluan
Kenapa saya ingin membuat custom queries pada android AndroidManifest? saat membuat fitur share ke instagram stories saya mengalami kendala saat user klik share yang terbuka bukan instagram stories tapi aplikasi lain.
setelah melempar pertanyaan ke forum. ada yang menyarankan menambahkan custom queries
seperti pada AndroidManifest.xml
.
<queries>
<!-- Specific apps you share to -->
<package android:name="com.instagram.android" />
<intent>
<action android:name="android.intent.action.SEND"/>
</intent>
</queries>
masalahnya saat build menggunakan server expo
code di atas tidak ikut dibuild karena file android
yang ada di local computer tidak ikut di submit ke dalam server expo
.
Solusi
Solusi yang saya temukan adalah dengan menambahakan code expo config plugins agar saat di build di server expo queries
ikut tergenerate.
const { withAndroidManifest } = require('@expo/config-plugins');
const withAndroidQueries = config => {
return withAndroidManifest(config, config => {
config.modResults.manifest.queries = [
{
package: [
{
$: { 'android:name': 'com.instagram.android' },
},
],
intent: [
{
action: [{ $: { 'android:name': 'android.intent.action.SEND' } }],
},
],
},
];
return config;
});
};
module.exports = withAndroidQueries;
jika ingin mengecek apakah file queries
tergenerate di dalam AndroidManifest.xml
coba run :
npx expo prebuild
lalu cek di dalam file AndroidManifest.xml
apakah sudah ada code seperti dibawah :
<queries>
<!-- Specific apps you share to -->
<package android:name="com.instagram.android" />
<intent>
<action android:name="android.intent.action.SEND"/>
</intent>
</queries>
Penutup
Jika kamu memiliki saran atau cara yang lain feel free to comment
Top comments (0)