抱歉我的格式化我是
android的新手以及stackoverflow
由于某些格式错误,无法提交我的所有logcat
总之,我得到以下错误:
at com.youmasti.mp3test.MainActivity.findsongs(MainActivity.java:45)
at com.youmasti.mp3test.MainActivity.onCreate(MainActivity.java:27)
这是我的代码:
Main Activity
public class MainActivity extends AppCompatActivity {
ListView lv;
String items;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv= (ListView)findViewById(R.id.lvPlaylist);
//File fTest = Environment.getExternalStorageDirectory();
ArrayList mySongs = findsongs(Environment.getExternalStorageDirectory());
for (int i = 0; i < mySongs.size(); i++) {
toast(mySongs.get(i).getName().toString());
}
}
public ArrayList findsongs(File root) {
ArrayList al= new ArrayList();
File[] file= root.listFiles();
for (File singlefile : file) {
if (singlefile.isDirectory() && !singlefile.isHidden()) {
al.addAll(findsongs(singlefile));
} else {
if (singlefile.getName().endsWith(".mp3")) {
al.add(singlefile);
}
}
}
return al;
}
public void toast (String text) {
Toast.makeText(getApplicationContext(),text,Toast.LENGTH_SHORT).show();
}
项目清单:
package="com.youmasti.mp3test">
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
android:name=".MainActivity"
android:label="@string/app_name" >
LogCat
08-30 10:39:30.227 2441-2441/? I/art﹕ Not late-enabling -Xcheck:jni (already on)
08-30 10:39:30.227 2441-2441/? I/art﹕ Late-enabling JIT
08-30 10:39:30.229 2441-2441/? I/art﹕ JIT created with code_cache_capacity=2MB compile_threshold=1000
08-30 10:39:30.346 2441-2441/? W/System﹕ ClassLoader referenced unknown path: /data/app/com.youmasti.mp3test-1/lib/x86
08-30 10:39:30.527 2441-2441/com.youmasti.mp3test D/AndroidRuntime﹕ Shutting down VM
--------- beginning of crash
08-30 10:39:30.528 2441-2441/com.youmasti.mp3test E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.youmasti.mp3test, PID: 2441
java.lang.RuntimeException: Unable to start activity ComponentInfo {com.youmasti.mp3test/com.youmasti.mp3test.MainActivity}: java.lang.NullPointerException: Attempt to get length of null array
at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2416)
at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11 (ActivityThread.java)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:616)
Caused by: java.lang.NullPointerException: Attempt to get length of null array
at com.youmasti.mp3test.MainActivity.findsongs (MainActivity.java:45)
at com.youmasti.mp3test.MainActivity.onCreate (MainActivity.java:27)
at android.app.Activity.performCreate(Activity.java:6237)
at android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1107)
at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2369)
at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)