app修改android属性(android修改应用名称)
android studio怎么修改app的图标
修改app的图标的话,一般都是在主配置文件里面进行修改的,有一个属性就是app:icon,进行加载相应的图片即可。
如何修改Android App的样式风格
android中可以自定义主题和风格。风格,也就是style,我们可以将一些统一的属性拿出来,比方说,长,宽,字体大小,字体颜色等等。可以在res/values目录下新建一个styles.xml的文件,在这个文件里面有resource根节点,在根节点里面添加item项,item项的名字就是属性的名字,item项的值就是属性的值,如下所示:
说完了style,下面就说说Theme,Theme跟style差不多,但是Theme是应用在Application或者Activity里面的,而Style是应用在某一个View里面的,还是有区别的,好了,废话不多说,还是看代码吧。下面的是style文件:
说完了style,下面就说说Theme,Theme跟style差不多,但是Theme是应用在Application或者Activity里面的,而Style是应用在某一个View里面的,还是有区别的,好了,废话不多说,还是看代码吧。下面的是style文件:
package com.test.shang;
import android.app.Activity;
import android.os.Bundle;
public class TestStyle extends Activity {
@Override
protected void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.CustomTheme);
setContentView(R.layout.test_style);
}
}
如何提升APP权限去修改android系统属性
Systemproperties类在android.os下,但这个类是隐藏的, 上层程序开发无法直接使用。其实用java的反射机制是可以使用这个类。何谓java反射机制,请自行研究学习,在此不做介绍,放到后续文章中。用JNI 的方式,可以绕过Systemproperties这个类,直接本地调用来实现创建、获取及修改系统属性。在此也不做介绍,也放到后续文章中。
创建与修改android属性用Systemproperties.set(name, value),获取android属性用Systemproperties.get(name),需要注意的是android属性的名称是有一定的格式要求的,如下: 前缀必须用system\core\init\property_service.c中定义的前缀 ,进行系统属性设置的程序也必须有system或root权限,
如何将android程序的权限提升到system权限? *** 是这样的:
1、在AndroidManifest.xml中,在manifest添加android:sharedUserId="android.uid.system "。
2、在Android.mk中,将LOCAL_CERTIFICATE := XXX修改成LOCAL_CERTIFICATE := platform 。
经过以上两步就可以把ap的权限提升到system权限了。 但是用这种 *** 提升权限有两个弊端,如下:
1、程序的拥有都必须有程序的源码;
2、程序的拥有都还必须有android开发环境,就是说自己能make整个android系统。
一般能做这两点的,基本上都是开发人员!
如何修改Android应用程序的图标和名字
利用反编译工具“安卓修改大师”可以修改Android应用程序的图标和名字。具体操作请参照以下步骤。
1、在应用下载网站下载“安卓修改大师”软件,下载完成后,安装到电脑系统中。
2、在电脑上打开“安卓修改大师”应用,在反编译选项界面导入需要修改图标和名字的安卓应用。在这里导入的是安卓应用“单机斗地主”,安卓应用原安装包需要事先下载在电脑中。
3、安卓应用导入之后,会出现一个提示,点击“否”直接进入常规信息的编辑界面。在编辑界面会出现安卓应用的各项信息。
4、在编辑界面,点击“替换图标”选项将应用的图标替换成需要的图标,在“应用名称”栏对应用名字进行修改,这里修改为了“谁是地主”。图标和名字可以根据个人需求修改。
5、在“打包/签名”选项点击“开始打包”对修改后的安卓应用进行重新编译。
6、打包完成后,Android应用程序的图标和名字就已经被修改了。此时只要将新的安装包导入到手机上安装就可以了。导出方式有“安装至手机”和“导出安装包”两种。
参考资料来源:百度百科-反向编译
参考资料来源:百度百科-apk
如何在android的源代码中添加persist属性
SystemProperties与Settings.System
1 使用 SystemProperties.get
如果属性名称以“ro.”开头,那么这个属性被视为只读属性。一旦设置,属性值不能改变。
如果属性名称以“persist.”开头,当设置这个属性时,其值也将写入/data/property。
在c++中就是对应JAVA的两个函数就是property_set, property_get,其实JAVA是通过JNI调用这两个函数的。
JAVA代码如下:
import android.os.SystemProperties;
SystemProperties.set("persist.sys.language", zone.getID());
String lang= SystemProperties.get("persist.sys.language");
获取 *** :
boolean fastfoodenable = SystemProperties.getBoolean("persist.sys.fastfoodenable", false);
设置 *** :
SystemProperties.set("persist.sys.fastfoodenable", "true");
C
#include cutils/properties.h
property_set("persist.sys.language", "zh");
property_get("persist.sys.language", propLang, "en");
在adb shell可以通过以下的命名读取和修改
#getprop persist.sys.language
#setprop persist.sys.language zh
创建与修改android属性用Systemproperties.set(name, value),获取android属性用Systemproperties.get(name),需要注意的是android属性的名称是有一定的格式要求的,如下: 前缀必须用system\core\init\property_service.c中定义的前缀 ,进行系统属性设置的程序也必须有system或root权限
如果我们要添加一个property:例如:silvan_liu
路径:system/core/rootdir/int.rc
在on post-fs-data 目录下
setprop persist.sys.silvan_liu 1//persist.sys 前缀名; 1为初始值
PS:不同前缀名权限不同,这里就不一一说明;还有为什么要加载on post-fs-data目录下,这和int.rc的语法有关
2 使用 Settings.System.putInt
这种方式会保存变量到Settings 数据库中,飞行模式等的开关就是用这种方式实现的。
首先需要定义一个系统属性值
路径:frameworks/base/core/java/android/provider/Settings.java
public static final String VIVIEN_FASTFOOD= "hungry";
1)获取 *** 如下:
@Override
public void onResume()
{
super.onResume();
if(Settings.System.getInt(getContentResolver(), Settings.System.VIVIEN_FASTFOOD,0)==1)
{
mYesORNo.setChecked(true);
}
else
mYesORNo.setChecked(false);
}
2)设置
if (mYesORNo.isChecked()) {
Settings.System.putInt(getContentResolver(),
Settings.System.VIVIEN_FASTFOOD, 1);
} else {
Settings.System.putInt(getContentResolver(),
Settings.System.VIVIEN_FASTFOOD, 0);
}
需要import android.provider.Settings;
android源码开发中,常常要用到一些全局标志或者说变量,这时候我们可以给android系统添加自己想要的属性。
1.Settings.system
这种系统属性我们经常用到,例如飞行模式的开启和关闭,我们就是去改变Settings.system.AIRPLANE_MODE_ON 的值。
下面就介绍下我们怎样去定义一个系统属性。例如要添加一个属性名为“SILVAN_LIU”
路径:frameworks/base/core/java/android/provider/Settings.java
public static final String SILVAN_LIU = "silvan_liu";
public static final String[] SETTINGS_TO_BACKUP ={
~
+SILVAN_LIU
~
}
这样添加后,你就是可以通过Settings.System.getInt(getContentResolver(), Settings.System.SILVAN_LIU,0) 和Settings.System.getInt(getContentResolver(), Settings.System.SILVAN_LIU,0)去得到和设定SILVAN_LIU的属性值。
2.SystemProperties
创建与修改android属性用Systemproperties.set(name, value),获取android属性用Systemproperties.get(name),需要注意的是android属性的名称是有一定的格式要求的,如下: 前缀必须用system\core\init\property_service.c中定义的前缀 ,进行系统属性设置的程序也必须有system或root权限
如果我们要添加一个property:例如:silvan_liu
路径:system/core/rootdir/int.rc
在on post-fs-data 目录下
setprop persist.sys.silvan_liu 1//persist.sys 前缀名; 1为初始值
PS:不同前缀名权限不同,这里就不一一说明;还有为什么要加载on post-fs-data目录下,这和int.rc的语法有关。
以上是我实际项目中运用到的地方,可能认识的不够深刻,还需继续摸索。
转载
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。