The prefered way of handling shared data between two apps on Android are Content Providers.
Unzipping the apk, scanning it for a file called "appfilter.xml" and copying the png icons might be more efficient than implementing the whole infrastructure for theming in every icon pack app.
But it is more error-prone and less flexible: if the icons are changed at one point for customization (from inside the icon pack app), the app that uses the icons won't notice the changes; if only the apk gets scanned. Using Content Providers, you could get much more flexibility!
The prefered way of handling shared data between two apps on Android are Content Providers.
Unzipping the apk, scanning it for a file called "appfilter.xml" and copying the png icons might be more efficient than implementing the whole infrastructure for theming in every icon pack app. But it is more error-prone and less flexible: if the icons are changed at one point for customization (from inside the icon pack app), the app that uses the icons won't notice the changes; if only the apk gets scanned. Using Content Providers, you could get much more flexibility!