我在我的 android 应用程序中创建了新线程来读取 .p12 文件,如下所示:
AssetManager am = getAssets();
InputStream inputStream = am.open("C:\\Users\\UkrBikeApp-ff55878cb577.p12");
该文件存在于目录中。但每次我得到
java.io.FileNotFoundException
模拟代码在简单的 java 应用程序中工作没有任何问题。是什么原因?
我在我的 android 应用程序中创建了新线程来读取 .p12 文件,如下所示:
AssetManager am = getAssets();
InputStream inputStream = am.open("C:\\Users\\UkrBikeApp-ff55878cb577.p12");
该文件存在于目录中。但每次我得到
java.io.FileNotFoundException
模拟代码在简单的 java 应用程序中工作没有任何问题。是什么原因?
首先,C:\\Users\\UkrBikeApp-ff55878cb577.p12
是 Windows 机器上文件的路径。Android 不是 Windows。
其次,C:\\Users\\UkrBikeApp-ff55878cb577.p12
是文件系统路径。它不是您 APK 中资产的路径,因此AssetManager
无论如何都不知道如何处理它。
如果您想将此文件打包到您的应用程序中:
assets/
在适当的模块和源集中创建一个目录(例如, app/src/main/assets/
)
把文件放进去assets/
与普通文件名open()
一起使用AssetManager