作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个非可视类,需要从 Assets 文件夹中读取一些文件。
完全在带外,所以没有 Activity 。我如何引用它without pass down the activity ?
我也可以接受一种替代 Assets 的方式来放置文件(如 .sql),以便稍后在 android 设备上读取。
PD:
这是调用的代码示例:
//Load asset not belong to anyone. Is that radical
let loadAsset(path:string) =
#if __ANDROID__
let sr = new StreamReader(?????.Assets.Open(path.Substring(1)))
seq {
while not sr.EndOfStream do
yield sr.ReadLine ()
}
#else
File.ReadLines(path)
#endif
最佳答案
您真正需要的是上下文。如果您的应用程序有一个 Application 类,您可以使用它的 Context 来检索 Assets 资源。
它应该看起来像这样:
public class App extends Application {
public static Context context;
@Override public void onCreate() {
super.onCreate();
context = getApplicationContext();
}
}
然后您可以使用 App.context 获取资源/ Assets 。
关于android - 如何在没有 Activity 的情况下获取 android Assets ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50918239/
我是一名优秀的程序员,十分优秀!