private void CreateListView() { listApps = new ListView(getActivity()); listApps = (ListView) getActivity().findViewById(R.id.listApps); adapter = new AppListingAdapter(); Map<String, AppHolder> faveApps = LessDroidApp.getDefault().getFaveApplications(); if (faveApps.size() == 0) { if (PreferenceManager.getDefaultSharedPreferences(getActivity()) .getBoolean(PREF_KEY_NO_FAVES, true)) { PreferenceManager.getDefaultSharedPreferences(getActivity()) .edit() .putBoolean(PREF_KEY_NO_FAVES, false) .commit(); Toast.makeText(getActivity(), "No favourite apps selected!", Toast.LENGTH_SHORT).show(); return; } } adapter.setListItems(LessDroidApp.getDefault().getFaveApplications()); listApps.setAdapter(adapter); listApps.setFastScrollEnabled(true); listApps.setOnItemClickListener( new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { final AppHolder app = (AppHolder) parent.getItemAtPosition(position); LessDroidApp.getDefault().launchApp(app.appInfo.className, LessDroidApp.getContext()); } }); }
public static void openApp(Context context, AppInfo appInfo, String appName) { if (isValidAppInfo(appInfo)) { try { LessDroidApp.getDefault().launchApp(appInfo.className, LessDroidApp.getContext()); } catch (Exception e) { Log.v( LessDroidApp.LOG_TAG, " Error launching " + appName + " app, trying alternative - " + e.getMessage()); alternateOpenApp(context, appInfo, appName); } } else { alternateOpenApp(context, appInfo, appName); } }
private static boolean isValidAppInfo(AppInfo appInfo) { boolean returnValue = true; if (appInfo == null) { return false; } try { returnValue = LessDroidApp.getDefault().getAppManager().isLaunchableApp(appInfo.className); } catch (NameNotFoundException e) { return false; } return returnValue; }
@Override public void onResume() { super.onResume(); adapter.setListItems(LessDroidApp.getDefault().getFaveApplications()); adapter.notifyDataSetChanged(); }