如何用system的进程启动一个GUI程序在当前

如何用system的进程启动一个GUI程序在当前,第1张

编写Gui时往往需要调用一些其他的外部程序。windows系统下,matlab可以用dos()或者

system()等命令来调用外部程序。

例如:dos(C:\Program Files\AA\XXXexe')

有时还需要在调用应用程序后,让应用程序再调用某些文件来执行。这时可以在dos()或者

system()中加入参数来实现:

比如:dos(C:\AA\XXXexe ABCtxt')%注意这里对空格的要求很严格。

在默认情形下,dos()或者system()打开了一个应用程序,知道这个应用程序结束了才执行后续

的命令,这里可以通过添加 & 的选项来实现打开应用程序后立即返回matlab,然后执行matlab

的后续命令,而不等待应用程序。

比如:dos('notepad filem &')%To open the Microsoft Notepad editor and return control

immediately to MATLAB。

由于安装应用程序的路径中往往有空格,使得dos()或者system()无法识别。因此可以在执行

dos()或者system()之前,先记住当前路径cd1=cd; 然后把当前路径改到应用程序所在的文件夹。

打开应用程序完成后,再改回cd1不影响后续程序的执行。

用matlab关闭应用程序时,可以调用tskillexe,tskillexe在关闭命令时,需要知道应用程序对应进程

的PID,有关用matlab读取PID的代码在网有下载。

comandroidsystem是android的应用程序systemUI这个程序。

systemui是Android系统状态栏的系统进程,如果对系统状态栏进行过修改或删除,那么很有可能出现comandroidsystemui已停止的问题。出现上述问题我们首先进行对手机进行恢复出厂设置,如果接连出现comandroidsystemui已停止的问题无法进行恢复出厂设置,那么此时我们就需要在recovery模式下进行双清 *** 作;在recovery模式下对手机进行恢复出厂设置。

下面是具体解决方法:

1、进入recovery模式。

2、在recovery模式下我们使用音量键选择,电源键确认,依次执行恢复出厂设置和清空缓存两项 *** 作,英文recovery界面下为(wipe data/factory reset和wipe cache partition两项)。

3、官方recovery和第三方recovery界面有所不同,具体执行方法请看小编介绍的文字,虽然界面不同,但是内部选项还是一样的,如果在双清以后还是无法解决comandroidsystemui已停止的问题,那么需要对手机进行刷机升级,一般系统软件问题通过刷机升级都能够解决。

Android(['ændrɔid])是一个以Linux为基础的半开源 *** 作系统,主要用于移动设备,由Google和开放手持设备联盟开发与领导。 Android 系统最初由安迪·鲁宾(Andy Rubin)制作,最初主要支持手机。2005年8月17日被Google收购。2007年11月5日,Google与84家硬件制造商、软件开发商及电信营运商组成开放手持设备联盟(Open Handset Alliance)来共同研发改良Android系统并生产搭载Android的智慧型手机,并逐渐拓展到平板电脑及其他领域上。随后,Google以Apache免费开源许可证的授权方式,发布了Android的源代码。

Android-X86是由Beyounn和Cwhuang主持设计的。提供了一套完整的可行源代码树,配套文档以及Live CD与Live USB。Android系统主要应用在智能手机以及平板电脑设备上。日前,越来越多使用英特尔和AMD处理器的计算机也开始运行Android系统。如何才能让Android系统在使用英特尔和AMD处理器的笔记本电脑、平板电脑以及桌面PC设备上运行呢?现阶段有几种不同的方法可以做到这一点。但使用 Android-X86无疑是最好的方法之一。其主要目的在于x86平台提供一套完整的Android 44 KitKat系统解决方案。

安卓的系统一般会有4个重要的分区:boot,system,cache,data。system分区存放的是系统应用(system app)和系统所需要的库文件(lib/so),而大家平时安装的软件是装到data分区(用户区)的。装在system区的就是系统应用,data分区的是用户应用。应用程序都安装在/app子目录下。

但是,不管是系统应用还是用户应用,安卓会建立缓存以加速应用的启动,该缓存是在/data/dalvik-cache下面。注意了,是在data分区上的,所以应用安装的越多,data分区可用的空间就越少。

一般ROOT之后,我们会删除/卸载部分系统的应用,从而system分区就空出了部分的空间,尤其是定制机,删了系统应用之后,会空出多达60M的空间。假如本身机器的ROM比较小,data分区不够用的话,就最好把部分的app移动到system空间,当然一旦移动到了system分区,就是系统应用了!

好,下面介绍哪些应用是可以移动到system分区的:

1) 开机就要启动的程序,比如权限管理啊,Widget啊。

2) 常常用到的程序,比如文件管理器。

3) 一些不会有内存驻留的小程序,比如autostarts,SD Maid啊。

有一些应用是不适合移动到system空间的:

1) 退出仍然会驻留内存的程序(比如数米基金宝),因为这些程序一旦变成了system应用,杀进程的软件就拿他们没办法了。

2) 应用程序内含lib库的,这个可以用压缩工具(windows下的zip工具、安卓下的ES文件管理器、RootExplorer)查看该apk,假如内部有lib文件夹的,里面有so文件的,那就说明他用到了这些lib。当然,若硬要移动到system空间也是可以的,只要把lib/so拷贝到system/lib下即可,但是本人觉得一是会造成重复,二是将来维护起来比较麻烦。不过有一法,可以在system/app下面建立文件夹,把so拷贝到该文件夹下,然后通过链接文件的方式将其拷贝到lib下。(这个我没试过)

移动方法:

1) 将该apk先卸载,然后将apk文件拷贝到system/app下,修改权限,有必要的话,重启一下。这样做的好处是,该软件的缓存会在卸载是自动删除。

2) 为防止有些应用卸载后数据丢失,可以不卸载,方法是:将apk拷贝到system/app下,然后删除data/app的apk,最后手动把/data/dalvik-cache/下该程序的缓存清除。

3) 假如要移动的应用太多,可以进入recovery,清除一下dalvik-cache,让启动的时候自动再生成cache。

不能删除的。

这是系统文件夹,存放了系统中的重要文件(如DLL文件等),一些软件在安装时也会向该文件夹复制文件,因此,随着安装的软件的增加,此文件夹中的内容也会越来越多。该文件夹内的文件一般不要轻易删除,否则会导致系统错误。

在 Android 中,如果要使用系统限制的权限(比如 androidpermissionWRITE_SECURE_SETTINGS),我们需要把程序安装到 /system/app/ 下。

下面以 SecureSettingapk 为例,演示这个 *** 作。需要准备一台已经获得 Root 权限的手机。

1、通过 USB 连接手机和电脑。

2、使用 adb 控制手机。

源码打印?

1 $ adb push SecureSettingapk /sdcard/ // 上传要安装的文件,为安装做准备。

2 $ adb shell

3 $ su // 切换到 root 用户。如果没有获得 Root 权限,这一步不会成功。

4 # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 让分区可写。

5 # cat /sdcard/SecureSettingapk > /system/app/SecureSettingapk // 这一步可以用 cp 实现,但一般设备中没有包含该命令。如果使用 mv 会出现错误:failed on '/sdcard/NetWorkapk' - Cross-device link。

6 # mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 还原分区属性,只读。

7 # exit

8 $ exit

$ adb push SecureSettingapk /sdcard/ // 上传要安装的文件,为安装做准备。

$ adb shell

$ su // 切换到 root 用户。如果没有获得 Root 权限,这一步不会成功。

# mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 让分区可写。

# cat /sdcard/SecureSettingapk > /system/app/SecureSettingapk // 这一步可以用 cp 实现,但一般设备中没有包含该命令。如果使用 mv 会出现错误:failed on '/sdcard/NetWorkapk' - Cross-device link。

# mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 还原分区属性,只读。

# exit

$ exit

重启,可以看到 SecureSetting 已经安装好。

以上就是关于如何用system的进程启动一个GUI程序在当前全部的内容,包括:如何用system的进程启动一个GUI程序在当前、com.android.system是什么、如何将应用安装到/system/app下等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9281039.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存