获取已经安装APK的路径 多进程Preferences数据共享 泛型ArrayList转数组 保存恢复ListView当前位置 调用便携式热点和数据共享设置 格式化 文件夹排

转载 2014年12月13日 23:51:57

一、获取已经安装APK的路径

PackageManager pm = getPackageManager();

for (ApplicationInfo app : pm.getInstalledApplications(0)) {
     Log.d("PackageList", "package: " + app.packageName + ", sourceDir: " + app.sourceDir);
}

  输出如下:

package: com.tmobile.thememanager, sourceDir: /system/app/ThemeManager.apk
package: com.touchtype.swiftkey, sourceDir: /data/app/com.touchtype.swiftkey-1.apk

  转载自这里。 

 

二、 多进程Preferences数据共享

复制代码
    public static void putStringProcess(Context ctx, String key, String value) {
        SharedPreferences sharedPreferences = ctx.getSharedPreferences("preference_mu", Context.MODE_MULTI_PROCESS);
        Editor editor = sharedPreferences.edit();
        editor.putString(key, value);
        editor.commit();
    }

    public static String getStringProcess(Context ctx, String key, String defValue) {
        SharedPreferences sharedPreferences = ctx.getSharedPreferences("preference_mu", Context.MODE_MULTI_PROCESS);
        return sharedPreferences.getString(key, defValue);
    }
复制代码

  相关文章:

http://zengrong.net/post/1687.htm

 

三、泛型ArrayList转数组

复制代码
    @SuppressWarnings("unchecked")
    public static <T> T[] toArray(Class<?> cls, ArrayList<T> items) {
        if (items == null || items.size() == 0) {
            return (T[]) Array.newInstance(cls, 0);
        }
        return items.toArray((T[]) Array.newInstance(cls, items.size()));
    }
复制代码

 

四、 保存恢复ListView当前位置

复制代码
    private void saveCurrentPosition() {
        if (mListView != null) {
            int position = mListView.getFirstVisiblePosition();
            View v = mListView.getChildAt(0);
            int top = (v == null) ? 0 : v.getTop();
            //保存position和top
        }
    }
    
    private void restorePosition() {
        if (mFolder != null && mListView != null) {
            int position = 0;//取出保存的数据
            int top = 0;//取出保存的数据
            mListView.setSelectionFromTop(position, top);
        }
    }
复制代码

可以保存在Preference中或者是数据库中,数据加载完后再设置。 

 

五、调用 便携式热点和数据共享 设置

复制代码
    public static Intent getHotspotSetting() {
        Intent intent = new Intent();
        intent.setAction(Intent.ACTION_MAIN);
        ComponentName com = new ComponentName("com.android.settings", "com.android.settings.TetherSettings");
        intent.setComponent(com);
        return intent;
    }
复制代码

 

六、 格式化输出IP地址

    public static String getIp(Context ctx) {
        return Formatter.formatIpAddress((WifiManager) ctx.getSystemService(Context.WIFI_SERVICE).getConnectionInfo().getIpAddress());
    }

 

七、 文件夹排序(先文件夹排序,后文件排序)

 

复制代码
    public static void sortFiles(File[] files) {
        Arrays.sort(files, new Comparator<File>() {

            @Override
            public int compare(File lhs, File rhs) {
                //返回负数表示o1 小于o2,返回0 表示o1和o2相等,返回正数表示o1大于o2。 
                boolean l1 = lhs.isDirectory();
                boolean l2 = rhs.isDirectory();
                if (l1 && !l2)
                    return -1;
                else if (!l1 && l2)
                    return 1;
                else {
                    return lhs.getName().compareTo(rhs.getName());
                }
            }
        });
    }

Python中多进程之间的数据共享

Python中多进程之间的数据共享 发表于 2016-07-24 | 分类于 Python | 0 | 阅读次数 387 多进程中,每个进程都是独立的,各自持有一份数...

Android中SharedPreference多进程数据共享出错

Android中SharedPreference多进程数据共享出错 主要解决: 在android中,多个进程对同一个sharedpreference进行修改,总会有一个进程获取到的结果不是实时修改后...
  • crissJs
  • crissJs
  • 2014年09月27日 18:39
  • 611

python多进程入门、分布式进程数据共享

python多进程入门https://docs.python.org/3/library/multiprocessing.html1、先来个简单的# coding: utf-8from multipr...

sharedUserId实现不同APK数据共享

  • 2012年12月25日 18:27
  • 1.17MB
  • 下载

android 通过wifi 热点实现手机摄像头数据共享

原网址:http://www.cnblogs.com/pengqinping/archive/2012/09/07/2674952.html 最近一直在在学习通过两个Android手...

Android 多个APK数据共享

ndroid给每个APK进程分配一个单独的用户空间,其manifest中的userid就是对应一个Linux用户(Android 系统是基于Linux)的.所以不同APK(用户)间互相访问数据默认是禁...

不同apk之间数据共享

Android给每个APK进程分配一个单独的用户空间,其manifest中的userid就是对应一个Linux用户 (Android 系统是基于Linux)的. 所以不同APK(用户)间互相访问数...

Android 多个APK数据共享

 http://www.cnblogs.com/rayray/p/3175091.html Android给每个APK进程分配一个单独的用户空间,其manifest中的userid就是对应一个...

Android之用sharedUserId来实现不同应用(APK)数据共享

android:sharedUserId 当APK安装的时候,userid这个标志就会产生。APK在设备上的整个生命周期中,这个ID不再改变。不同设备上同一个应用包可能有不同的userid,重要的是...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:获取已经安装APK的路径 多进程Preferences数据共享 泛型ArrayList转数组 保存恢复ListView当前位置 调用便携式热点和数据共享设置 格式化 文件夹排
举报原因:
原因补充:

(最多只允许输入30个字)