10

我想知道是否可以通过编程方式找到 Android 项目中包含的所有库。我正在编写一个库,它需要有关项目中包含的其他库的信息。非常感谢任何帮助。

4

2 回答 2

0

我做了一个简单的函数,当你想知道细节时,只需调用这个函数。

public static void checkLibrary(){
            try {
                Log.e(" i am in","checklibrary");
                Set<String> libs = new HashSet<String>();
                String mapsFile = "/proc/" + android.os.Process.myPid() + "/maps";
                BufferedReader reader = new BufferedReader(new FileReader(mapsFile));
                String line;
                while ((line = reader.readLine()) != null) {
                    if (line.endsWith(".so")) {
                        int n = line.lastIndexOf(" ");
                        libs.add(line.substring(n + 1));
                    }
                }
                Log.e("Ldd", libs.size() + " libraries:");
                for (String lib : libs) {
                    Log.e("Ldd", lib);
                }
            } catch (FileNotFoundException e) {
                // Do some error handling...
            } catch (IOException e) {
                // Do some error handling...
            }
        }
于 2013-07-24T12:54:59.807 回答
0

对于未来的读者。

您可以使用 Mike Penz 的AboutLibraries

好处

  • 允许列出项目中使用的外部、内部库
  • 带有项目中使用的库列表的开箱即用活动或片段。
于 2019-07-21T13:36:37.077 回答