android_切换屏处理_获取所有APP包名_安装apk

1.横竖屏切换时防止重新调用onCreate()方法。

一般android程序开发的时候,当出现横竖屏的切换时,会重新调用onCreate方法,这样的话前提是本来运行的acticity会调用destory方法,这肯定不是我们想要的结果,我们并不想结束了acticity之后再次开启一个。

这时候将以下内容添加到AndroidManifest.xml文件的activity标签中:android:configChanges="orientation|keyboardHidden"

这样的话横竖屏切换的时候会直接调用onCreate方法中的onConfigurationChanged方法,而不是重新执行onCreate方法,如果没有使用这个属性就会重新调用onCreate方法了。


2.获取android中所安装的所有包名。

private List<String> getAllPackage(){
        List<String> list=new ArrayList<String>();
        
        List<PackageInfo> packs = context.getPackageManager().getInstalledPackages(0);     
        int size = packs.size();
        Log_I("package's size is"+size);
        for(int i=0;i<size;i++) {
            PackageInfo p = packs.get(i);
            list.add(p.packageName);
        }
        return list;
    }

3.输入apk路径,进行文件安装

public boolean installApp(String packageName){
		String MD5Name = MD5Service.getMD5Name(packageName);
		String path=Constant.StorageLocation+MD5Name;
		File apkfile = new File(path);
		if (!apkfile.exists()) {
			Log_I("file "+apkfile+" is not exist");
			return false;
		}
		Intent i = new Intent(Intent.ACTION_VIEW);
		i.setDataAndType(Uri.parse("file://" + apkfile.toString()),
				"application/vnd.android.package-archive");
		context.startActivity(i);
		Log_I("file "+apkfile+" start install");
		return true;
	}


你可能感兴趣的:(android_切换屏处理_获取所有APP包名_安装apk)