我需要一个课程来获取设备上的艺术家,专辑和曲目,然后我将使用JNI进行调用。
目前,在其准系统中,以下情况会导致崩溃。
public class AndroidMediaLibray extends Activity {
public void getArtists() {
getContentResolver();
}
}
如何让它不崩溃?
答案 0 :(得分:0)
您遇到的问题是,您需要在getContentResolver()
上致电Context
。如果您在Activity
中拨打电话,则会自动在Context
的{{1}}上拨打该电话。但是你(可能)从未真正开始Activity
。请参阅documentation of activities。如果要在额外的类中调用DB,可以查看以下代码。我用静态方法创建了一个类。我只需要将给定AndroidMediaLibrary
的上下文传递给该类。在您的情况下,该类可能如下所示:
Activity
您可以通过以下方式从MainActivity调用该功能:
public class AndroidMediaLibrary {
public static List<String> getArtists(Context context){
ArrayList<String> retVal = new ArrayList<String>();
ContentResolver resolver = context.getContentResolver();
// some more stuff here..
return retVal;
}
}