[Java-AOS] ๐Ÿšจ One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED.. ๐Ÿšจ | ์—๋Ÿฌ ํ•ด๊ฒฐ

CreatyJohnยท2024๋…„ 8์›” 2์ผ

ERROR

๋ชฉ๋ก ๋ณด๊ธฐ
2/4
post-thumbnail

Error Log

[Error] One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED should be specified when a receiver isn't being registered exclusively for system broadcasts


Error Found

์‚ฌ๋‚ด ์ „ํ™” : ์‚๋ฆฌใ…ฃ๋ฆฌ๋ฆด๋ฆฌ๋ฆฌใ…ฃใ„น
CSํŒ€ : AOS ์œ ์ง€๋ณด์ˆ˜ํŒ€~ ๊ธฐ์กด์— ๋Ÿฐ์นญ๋œ ์•ฑ๋“ค์ด ๊ฐ‘์ž๊ธฐ ๋‹ค ๋‚ด๋ ค๊ฐ”๋„ค์š”~ ํ™•์ธํ•ด์ฃผ์„ธ์š”! (์‚ฌ์‹ค ๋‚˜ ํ˜ผ์ž๊ธด ํ•˜๋‹ค)

์ž˜ ๋Ÿฐ์นญ ๋˜์–ด์žˆ๋˜ ์•ฑ์ด ๊ฐ‘์ž๊ธฐ ๋‚ด๋ ค๊ฐ€๊ฒŒ ๋˜์—ˆ๋‹ค

์—ฐ๋ฝ์„ ๋ฐ›์ž๋งˆ์ž
์ตœ๊ทผ์— ๊ธฐ๋Šฅ ํŒจ์น˜๋ฅผ ํ•œ ๊ฒƒ์ด ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์—
๊ตฌ๊ธ€ ๋ฒ„์ „ ์—…๋ฐ์ดํŠธ์— ๊ด€๋ จ๋œ ์—๋Ÿฌ๊ฐ€ ์žˆ๊ฒ ๊ฑฐ๋‹ˆ~~
์ƒ๊ฐํ•˜์˜€๋‹ค

๊ทธ๋Ÿฌ๋‚˜...

๊ตฌ๊ธ€ ์ฝ˜์†” ๋กœ๊ทธ๋Š” ๊น”๋” ํ–ˆ๋‹ค.. ํ์œผ์Œ...
(์‚ฌ์‹ค ๋”ฐ๋กœ ๋ฉ”์ผ ์˜จ ๊ฒƒ๋„ ์—†์–ด์„œ ์–ด๋А์ •๋„๋Š” ์˜ˆ์ƒ ํ–ˆ๋‹ค)

์ด์ œ ์•ฑ ์†Œ์Šค์˜ ๋ฌธ์ œ์ ์„ ๋ฐœ๊ฒฌํ•˜๊ณ ์ž ๋นŒ๋“œ๋ฅผ ํ•ด๋ดค๋”๋‹ˆ

์—๋Ÿฌ๊ฐ€ ๋™‡!!!

Error Solute

RECEIVER_EXPORTED ๋˜๋Š” RECEIVER_NOT_EXPORTED flag๊ฐ€ ์—†๋Š” ์ƒํƒœ์—์„œ ๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ๋ฆฌ์‹œ๋ฒ„๋ฅผ ๋“ฑ๋กํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ์•ฑ ๋ณด์•ˆ์˜ค๋ฅ˜

Android 12(API ๋ ˆ๋ฒจ 31)๋ถ€ํ„ฐ ๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ๋ฆฌ์‹œ๋ฒ„๋ฅผ ๋“ฑ๋กํ•  ๋•Œ ๋ณด์•ˆ ๊ฐ•ํ™” ์ธก๋ฉด์—์„œ ์ด ๋‘ ํ”Œ๋ž˜๊ทธ ์ค‘ ํ•˜๋‚˜๋ฅผ ๋ฐ˜๋“œ์‹œ ๋ช…์‹œํ•ด์•ผ ํ•œ๋‹ค


Code Review

Default Code
IntentFilter completeFilter = new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE);
registerReceiver(completeReceiver, completeFilter);

filter ๋ฅผ ์ถ”๊ฐ€ํ•œ ๊ณณ์— Context.RECEIVER_EXPORTED ๋„ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค

Solute Code
IntentFilter completeFilter = new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE);
registerReceiver(completeReceiver, completeFilter, /* ์—ฌ๊ธฐ ์ถ”๊ฐ€ */Context.RECEIVER_EXPORTED);

Solute Success !!

ํ•ด๋‹น ์˜ค๋ฅ˜๋Š” ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ•  ์‹œ, ์•ฑ ์‹คํ–‰ ์ž์ฒด๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•œ ์˜ค๋ฅ˜๋‹ˆ
๋ฐ˜๋“œ์‹œ ํ•ด๊ฒฐํ•˜๊ณ  ๋„˜์–ด๊ฐ€์ž

profile
์œ ์—ฐํ•˜๊ฒŒ ๊ฐœ๋ฐœํ•˜๋Š” ํ”„๋ก ํŠธ์—”๋“œ & AOS ๊ฐœ๋ฐœ์ž

0๊ฐœ์˜ ๋Œ“๊ธ€