在APP应用中运行cmd命令
16lz
2022-08-04
这个网上其实也有很多相关东西,简单,但是要有平台签名。
这里只说下重点。
运行cmd命令:
Runtime.getRuntime().exec(cmd);
在AndroidManifest.xml中进行如下声明:
...
其中android:sharedUserId="android.uid.system"是获取系统权限(不获取也能运行,但是功能很有限),android:installLocation="internalOnly"是将应用安装在手机内存中。
另外还要获取平台签名,修改Android.mk文件,加入LOCAL_CERTIFICATE := platform这一行,再进行编译。这样编出来的APK就能运行cmd命令了。
Android.mk文件示例:
###############################################################################LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_CERTIFICATE := platformLOCAL_MODULE_TAGS := optionalLOCAL_SRC_FILES := $(call all-java-files-under, src)LOCAL_STATIC_ANDROID_LIBRARIES := \androidx.fragment_fragment \androidx.legacy_legacy-support-core-ui \androidx.core_core \androidx.legacy_legacy-support-v13 \android.support.v4LOCAL_PACKAGE_NAME := justtestLOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res#LOCAL_PROGUARD_ENABLED := disabledLOCAL_DEX_PREOPT := falseLOCAL_PRIVATE_PLATFORM_APIS := trueLOCAL_STATIC_ANDROID_LIBRARIES := \ android-support-v4 \ android-support-v7-appcompat \ android-support-compat \LOCAL_AAPT_FLAGS := --auto-add-overlayLOCAL_USE_AAPT2 := trueinclude $(BUILD_PACKAGE)
更多相关文章
- 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Debian镜像
- Android屏幕分辨率正确获取及PX,DPI,DP,SP等的对应关系
- android 获取唯一标识
- android(NDK+JNI)---Eclipse+CDT+gdb调试android ndk程序
- android拍照与读取相册
- Android(安卓)热点开关状态的判断和获取热点ssid
- Android(安卓)bluetooth介绍(四): a2dp connect流程分析
- Android软键盘适配问题
- Android(安卓)命令行编译、打包生成apk文件