После некоторых исследований и практики, я заметил, что мы можем получить доступ к ресурсам из других приложений, использующих PackageManager какПуть Доступа к ресурсам и ресурсы идентификаторов других приложений
Resources resources = getApplicationContext().getPackageManager().getResourcesForApplication(appPackageName);
, а лишь доступ к Resources
не является достаточным. Нам нужны идентификаторы для каждого компонента Resource, такого как Drawables, layouts, Strings и т. Д. И т. Д. ... для доступа к ним из ресурсов.
Я искал в SO и очень много боролся о том, как получить идентификаторы ресурсов других приложений, но не получил правильного решения. Я видел в этом случае, некоторые люди предложили использовать методы как
resources.getIdentifier(String name, String defType, String defPackage);
resources.getValue(String name, TypedValue outValue, boolean resolveRefs);
resources.getValue(int id, TypedValue outValue, boolean resolveRefs);
, но не знаю, как их использовать.
Мне нужно получить доступ к ресурсам (Drawables, Strings, Layouts ...) других приложений.
Помогите мне в этом беспокойстве. Любая помощь будет принята с благодарностью ...
спасибо всем и извините за мой английский ...
Если это произойдет, это будет серьезное нарушение безопасности. –
@AbhishekV, поскольку мы можем получить Ресурсы, я надеюсь, что мы сможем получить компоненты ресурсов, такие как Drawables, layouts и т. Д. И т. Д. ... не так ли? –
@GopalRao Я могу получить ресурсы. Но чтобы получить чертежи из объекта Resources, нам нужно знать имя/идентификатор этого ресурса. Мы знали бы его знать только в том случае, если мы разработчики обоих приложений. –