android安装apk代码
⑴ android如何在一个应用中安装另一个apk
String str = "/appstore.apk";
String fileName = Environment.getExternalStorageDirectory() + str;
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(new File(fileName)),
"application/vnd.android.package-archive");
startActivity(intent);
这个是安装apk的代码,不过不是静默安装,安装的时候会跟安装一般的软件一样会有提示的str就是apk的路径
⑵ 如何安装APK到Android手机上,必看
方法一 利用手机内置APK安装器
设置——应用程序——APK安装器
只要把APK程序都放到SD卡上,就可以直接在这个内置的APK安装器上进行软件的安装与卸载。
--------------------------------------------------------------------------------------------------------------
方法二 利用PC客户端android应用安装器
可以使用PC端软件:91手机助手、豌豆夹等Android应用安装器。这些Android应用安装器中都有海量的Android应用。你首先要在PC上安装,然后将手机连接PC,这些Android应用安装器会自动关联你手机设备,点击安装,就可以将软件安装到你的手机里了。
---------------------------------------------------------------------------------------------------------------------
方法三 利用资源管理器
如果你手机没有自带APK安装器,可以上google market下载一个“APK安装器”。首先,你要确定你手机中有内置google market。然后,你需联网登录google market下载一个“APK安装器”,推荐你使用“ASTRO资源管理器”。
之后你要安装新软件,可以把需要安装的文件拷贝到 SD 卡里,使用“ASTRO资源管理器”进行软件的安装。
---------------------------------------------------------------------------------------------------------------------
方法四 利用安卓网APK安装器
APK安装器就是将APK文件安装到手机上的一个PC端软件,我们首先需要下载一个USB驱动
在PC上安装好“APK安装器”,这个软件会自动关联你的APK程序,只要双击一下APK程序就可以自动安装到你的手机里了。
⑶ 如何安装APK文件到自己的android手机里
我们一般称ANDROID平台下安装文件为“APK”
如果我们手机要安装apk
手机上首先要进行一些设置,设置——应用程序——勾选“未知源”
设置——应用程序——开发——勾选“USB 调试”
方法一
运用APK安装器,就是将APK文件安装到手机上的一个PC端软件,我们首先需要下载一个USB驱动,在PC上安装好“APK安装器”,这个软件会自动关联你的APK程序,只要双击一下APK程序就可以自动安装到你的手机里了
点击下载APK安装器
如果不想下驱动也可以下载一个手机助手
你把你的android手机和电脑连接后打开手机助理
然后他就会自动帮你下载驱动
同时会连接手机
方法二
大家需要先下载一个资源管理器软件,可以通过网络在 MARKET 中下载一个资源管理器,你也可以直接下载
过方法一把资源管理器安装好,之后再安装软件只要把 ".APK"的安装文件拷贝到 SD 卡里,
之后使用资源管理器软件在SD卡下打开 ".APK"的安装文件,
直接安装即可.点击下载该文件 附件391414
然后把在电脑上下载好了的APK文件 丢到电脑上SD移动设备 然后从手机的资源管理器上找到该文件 安装就行
方法三
设置——应用程序——APK安装器
只要把APK程序都放到SD卡上,就可以直接在这个内置的APK安装器上进行软件的安装与卸载。
方法四
直接在手机自带的软件管家中点击“安装包”,
然后找到所需安装包。
选择安装即可。
⑷ 如何在Android7.0系统下通过Intent安装apk
Android系统升级到7.0之后,安全性提高了不少,过去我们通常是使用这样的代码进行apk的安装操作。
“`
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(apkFile), “application/vnd.android.package-archive”);
context.startActivity(intent);
“`
但是在Android7.0的系统上,运行这段代码,会报如下错误。
Caused by: android.os.FileUriExposedException
原因是,安卓官方为了提高私有文件的安全性,面向 Android 7.0 或更高版本的应用私有目录被限制访问(0700)。此设置可防止私有文件的元数据泄漏,如它们的大小或存在性.
传递软件包网域外的 file:// URI 可能给接收器留下无法访问的路径。因此,尝试传递 file:// URI 会触发 FileUriExposedException。分享私有文件内容的推荐方法是使用 FileProvider。
1.定义一个FileProvider
<manifest>
...
<application>
...
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="com.mydomain.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
...
</provider>
...
</application>
</manifest>
2.添加可用权限的文件目录
在res目录下,增加xml文件夹,并新建一个名为 file_paths.xml 的文件。文件内容格式如下:
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<files-path name="name1" path="test1" />
...
</paths>
标签下面必须包含至少包含以下标签中的一个或者多个。
files-path
<files-path name="name1" path="test1" />
表示Context.getFilesDir()目录或者其子目录。
示例 : /data/data/com.chen.gradle/files/test1
cache-path
<cache-path name="name2" path="test2" />
表示Context.getCacheDir()目录或者其子目录。
示例 : /data/data/com.chen.gradle/cache/test2
external-path
<external-path name="name3" path="test3" />
表示Environment.getExternalStorageDirectory()目录或者其子目录。
示例 : /storage/emulated/0/test3
external-files-path
<external-files-path name="name4" path="test4" />
表示Context.getExternalFilesDir(null)目录或者其子目录。
示例 : /storage/emulated/0/Android/data/com.chen.gradle/files/test4
external-cache-path
<external-cache-path name="name5" path="test5" />
表示Context.getExternalCacheDir()目录或者其子目录。
示例 : /storage/emulated/0/Android/data/com.chen.gradle/cache/test5
3.增加到provider
通过<meta-data>标签将上面的filepath添加到provider当中。
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="com.mydomain.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
4.通过provider生成Uri
File imagePath = new File(Context.getFilesDir(), "test1");
File newFile = new File(imagePath, "default_image.jpg");
Uri contentUri = FileProvider.getUriForFile(getContext(), "com.mydomain.fileprovider", newFile);
5.赋予临时权限给Uri
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
最终安装apk的代码变成这样:
public static void installApk(Context context, String apkPath) {
if (context == null || TextUtils.isEmpty(apkPath)) {
return;
}
File file = new File(apkPath);
Intent intent = new Intent(Intent.ACTION_VIEW);
//判读版本是否在7.0以上
if (Build.VERSION.SDK_INT >= 24) {
//provider authorities
Uri apkUri = FileProvider.getUriForFile(context, "com.mydomain.fileprovider", file);
//Granting Temporary Permissions to a URI
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
intent.setDataAndType(apkUri, "application/vnd.android.package-archive");
} else {
intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive");
}
context.startActivity(intent);
}
⑸ 如何看一个android的.apk应用安装器的源代码。
朋友,你好,这个需要用到反编译,才可以看到源码哦。
APK反编译方法如下:
一、更改apk文件的后缀名,如:LianyunHelper3.0.11.apk改成LianyunHelper3.0.11.zip
二、用zip解压缩LianyunHelper3.0.11.zip文件
三、从解压缩的文件夹中取出classes.dex文件并放到dex2jar.bat所在目录
四、运行cmd命令,进入dex2jar.bat所在的目录,输入dex2jar.bat classes.dex即可生成classes.dex.dex2jar.jar文件
五、用jd-gui工具打开classes.dex.dex2jar.jar文件,即可看到源码
六、将AndroidManifest.xml文件放到AXMLPrinter2.jar所在目录,运行cmd命令,进入 AXMLPrinter2.jar所在目录,输入java -jar AXMLPrinter2.jar AndroidManifest.xml > AndroidManifest.txt。
⑹ 如何在Android设备上运行并安装APK文件
1、运行SDK Manager,选择模拟器,并运行模拟器 SDK Manager应用 2、将需要安装的apk文件复制到platform-tools目录下(默认在:C:\Program Files\Android\android-sdk-windows\platform-tools )。为安装方便,这里将其命名为game.apk 3、点击开始→运行,输入cmd,打开cmd窗口。输入cd C:\Program Files\android-sdk-windows\platform-tools,进入platform-tools目录 在cmd窗口中的platform-tools目录下输入adb install game.apk,回车,稍等,完成apk在模拟器上的安装。 4、打开模拟器,可看到安装的apk游戏。
⑺ android如何在代码中安装apk
/**
* 安装APK文件
*/
private void installApk()
{
File apkfile = new File(文件路径,应用名称);
if (!apkfile.exists())
{
return;
}
// 通过Intent安装APK文件
Intent i = new Intent(Intent.ACTION_VIEW);
i.setDataAndType(Uri.parse("file://" + apkfile.toString()), "application/vnd.android.package-archive");
mContext.startActivity(i);
}
⑻ android-x86怎么安装apk
应该可以直接安装,但是运行不能保证成功,因为:
如果你的APK是只编译在ARM架构上的话,APK里面的.so库文件里(如果有),它是一些ARM指令,这肯定不能直接在Intel架构上运行。
解决办法:
用NDK build android x86的.so库(假设你有源代码)。
1. 创建Application.mk文件,在文件中添加如下内容:(让它生成x86下的库文件)
APP_ABI := armeabi armeabi-v7a x86
2. 如果不想使用Application.mk文件,则在ndk-build 参数中添加APP_ABI=“armeabi armeabi-v7a x86”
安装APK时会根据系统cpu架构,将对应的.so库文件复制到系统lib目录。
当然还有一种装虚拟机的办法,让APK在虚拟机里面跑,但是这好像不是安装到android系统。
⑼ Android 代码,关于pm指令安装apk。
你看你的加号被写到字符串里了
⑽ android怎么用程序安装APK,而无安装确认提示
我知道用这个方法可以安装,但是因为启动的是一个activity,它有安装确认提示。
Intent
i = new Intent();
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.setAction(android.content.Intent.ACTION_VIEW);
/*
调用getMIMEType()来取得MimeType */
String type =
getMIMEType(f);
i.setDataAndType(Uri.fromFile(f), type);
startActivity(i);
用什么方法可以直接安装无提示呢。
一、 安装
1.
安装第三方应用
$ adb install apk文件名
2. 安装系统应用
$ adb
remount
$ adb push apk文件名 /system/app //
apk文件名形如testme.apk
二、 卸载
1. $ adb uninstall 包名 //
包名形如com.android.testme
2.
Home->设置->应用程序->管理应用程序->选择某应用程序->卸载