zoukankan      html  css  js  c++  java
  • (十五)APK的安装、卸载、分享、运行的代码

    一、安装APK文件

    /**
             * 安装apk
             * 
             * @param file 要安装的APK文件
             */
            private void install(File file) {
    
                Intent intent = new Intent();
                intent.setAction(Intent.ACTION_VIEW);
                intent.setDataAndType(Uri.fromFile(file),
                        "application/vnd.android.package-archive");
                finish();
                startActivity(intent);
            }

    二、分享功能实现

    Intent shareIntent = new Intent();
                shareIntent.setAction(Intent.ACTION_SEND);
                shareIntent.setType("text/plain");
                // 需要指定意图的数据类型
                shareIntent.putExtra(Intent.EXTRA_SUBJECT, "分享");
                shareIntent.putExtra(Intent.EXTRA_TEXT,
                        "推荐你使用一个程序" + item.getAppname());
                shareIntent = Intent.createChooser(shareIntent, "分享");
                startActivity(shareIntent);

     三、卸载程序

    String uristr = "package:" + packname;
                    Uri uri = Uri.parse(uristr);
                    Intent deleteIntent = new Intent();
                    deleteIntent.setAction(Intent.ACTION_DELETE);
                    deleteIntent.setData(uri);
                    startActivityForResult(deleteIntent, 0);

    四、运行应用程序

    try {
                    PackageInfo info = getPackageManager().getPackageInfo(
                            packname,
                            PackageManager.GET_UNINSTALLED_PACKAGES
                                    | PackageManager.GET_ACTIVITIES);
                    ActivityInfo[] activityinfos = info.activities;
                    if (activityinfos.length > 0) {
                        ActivityInfo startActivity = activityinfos[0];
                        Intent intent = new Intent();
                        intent.setClassName(packname, startActivity.name);
                        startActivity(intent);
                    } else {
                        Toast.makeText(this, "当前应用程序无法启动", 0).show();
                    }
                } catch (Exception e) {
                    Toast.makeText(this, "应用程序无法启动", 0).show();
                    e.printStackTrace();
                }
  • 相关阅读:
    博客园安卓客户端合仔茶版本V4.0震撼发布
    提示功能的检索框
    .net 玩自动化浏览器
    《表单篇》DataBase之大数据量经验总结
    自定义表主键
    一次网络程序Debug过程
    关于.NET下开源及商业图像处理(PSD)组件
    利用反射从程序集dll中动态调用方法
    Linux内核源码分析方法
    wcf基础教程之 契约(合同)Contract
  • 原文地址:https://www.cnblogs.com/fuyanan/p/4089814.html
Copyright © 2011-2022 走看看