次のコードは、apkファイルのリストを列挙する必要がありますが、なんらかの理由でそうではありません。私は、インストールするために選択できるリストから1つの.apkファイルを選択できるように、.apkファイルのリストをプログラムで取得しようとしています。出来ますか?sdカードから.apkファイルのユーザリストをプログラム的に表示するにはどうすればいいですか?
public class InstallAPKActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ExtFilter apkFilter = new ExtFilter("apk");
File file[] = Environment.getExternalStorageDirectory().listFiles(apkFilter);
Log.d("InstallApk", "Filter applied. Size: "+ file.length);
for (int i=0; i < file.length; i++)
{
Log.d("InstallApk", "FileName:" + file[i].getName());
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file[i]),
"application/vnd.android.package-archive");
startActivity(intent);
}
}
class ExtFilter implements FilenameFilter {
String ext;
public ExtFilter(String ext) {
this.ext = "." + ext;
}
public boolean accept(File dir, String name) {
return name.endsWith(ext);
}
}
}
私はこのコードを使用しても問題ありません。 – Manikandan
@Manikandan:ねえ、私のようなエラーを出す:ERROR原因:java.lang.ClassNotFoundException:com.a.android.GetapkActivity in loader dalvik.system.PathClassLoader [/data/app/com.a.android-1。 apk] –