安卓

安卓入门笔记之程序名称和图标的修改

拈花ヽ惹草 提交于 2020-03-09 10:13:23
本文来自 过客 的 网易 博客 Android 设置应用程序名称及图标 过☆客 2013-08-30 01:08 在Android工程的res资源目录下,会看到许多的drawable的文件夹和一个values文件夹 修改应用程序名称,打开strings.xml文件修改<string name="app_name">你的程序名称</string>。如果你改的是中文名,改后出现了加载本地化字符串出错时,检查一下strings.xml是否是UTF-8格式的就可以了。 修改应用程序图标。直接在drawable以及一系列的drawable文件夹中创建或修改ic_launcher.png图片就可以了。后面什么hdpi,ldpi等是在不同屏幕的dpi下显示的。不果不考虑太多的话就直接在drawable文件夹中创建一个就可以了。想要自字义图片名,那需要在AndroidManifest.xml中加入一个节点application android:icon="@drawable/ic_launcher",不需要加文件扩展名。 来源: oschina 链接: https://my.oschina.net/u/1581347/blog/222859

安卓开发的真机测试运行的问题。

泄露秘密 提交于 2020-02-29 06:00:01
今天应公司要求,看了下安卓。并开始着手开始搭建环境。至于需要那些工具和步骤我在这里就不说了,网上很多。 首先我说遇到的第一个问题 1 应用程序在发布的时候。检测不到avd和avb。 首先说遇到这种情况。不用解释 肯定是adb。exe的错误。解决 1 关闭你的其他手机连接软件,豌豆荚和杀毒软件。 2 打开cmd 执行杀死进程: adb kill-server 3 在执行:adb start-server 启动服务 和查看连接到的手机列表 adb devices 这个时候在打开工程执行run as 第一个 就是 就会看到2个表格 上面一个 下面一个 。上面那个是选择真机测试,意思是直接打包安装到你的真机上面去,并且启动。下面 那个是安卓的虚拟机。一般来说,,我们开发都是用真机,虚拟机太过慢。影响效率。 在连接的时候需要注意几点: 1 注意的use调试选项,允许你的手机装载未知来源的那个要打开 2 你手机的驱动需要装载好。可以去官方下载。然后提供一个地址:是更改错误的驱动的需要修改: http://blog.csdn.net/wisepragma/article/details/40453041 我今天出现的问题是。首先 在安装的devices 的视图里面找不到我的手机,我在杀死进程abd 有重启之后就找的到了,但是 由于有个问题 ,下面没有那个状态, 我的错误下图: 后来我换了个安卓5

android中访问本机服务器的方法

南笙酒味 提交于 2019-12-10 08:15:59
我们在android的程序中要访问本机服务器里的资源,是不能通过localhost或者127.0.0.1的方法来访问的,不然会报错。 问题是这样的,android模拟器(simulator)把它自己作为了localhost,也就是说代码中使用localhost或者127.0.0.1来访问,都是访问模拟器自己!这是不行的! 我们访问本机有两种方式: 1. 使用android内置的IP 10.0.2.2 , 10.0.2.2 是模拟器设置的特定ip,是你的电脑的别名,在模拟器上用10.0.2.2访问你的电脑本机 2.ipconfig来查自己的ip地址。(因为我是使用的无线路由器,所以这个方法查的也只是路由器分配的ip)。 我由于不知道,被这个错纠结了两天...希望大家看了不会再步入我的歧途.. 来源: oschina 链接: https://my.oschina.net/u/920442/blog/108480

获取Android获取传感器列表

感情迁移 提交于 2019-12-09 11:09:48
Android 4.4 (API等级19)支持以下传感器: TYPE_ACCELEROMETER 加速度传感器,单位是m/s2,测量应用于设备X、Y、Z轴上的加速度 传感器类型值(Sensor Type):1 (0x00000001) TYPE_AMBIENT_TEMPERATURE 温度传感器,单位是℃ 传感器类型值(Sensor Type): 13 (0x0000000d) TYPE_GAME_ROTATION_VECTOR 游戏动作传感器,不收电磁干扰影响 传感器类型值(Sensor Type):15 (0x0000000f) TYPE_GEOMAGNETIC_ROTATION_VECTOR 地磁旋转矢量传感器,提供手机的旋转矢量,当手机处于休眠状态时,仍可以记录设备的方位 传感器类型值(Sensor Type):20 (0x00000014) TYPE_GRAVITY 重力传感器,单位是m/s2,测量应用于设备X、Y、Z轴上的重力 传感器类型值(Sensor Type):9 (0x00000009) TYPE_GYROSCOPE 陀螺仪传感器,单位是rad/s,测量设备x、y、z三轴的角加速度 传感器类型值(Sensor Type):4 (0x00000004) TYPE_GYROSCOPE_UNCALIBRATED 未校准陀螺仪传感器,提供原始的,未校准、补偿的陀螺仪数据

安卓设置背景图平铺,同时设置背景色

China☆狼群 提交于 2019-12-06 10:32:40
安卓设置背景图平铺,同时设置背景色需要在drawable中新建一个background_line_pantone.xml: <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <!--背景色--> <item> <shape> <solid android:color="#7BB137" /> </shape> </item> <!--背景图平铺--> <item> <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@mipmap/line" android:tileMode="repeat" /> </item> </layer-list> 然后再需要用到的地方使用 android:background="@drawable/background_line_pantone" 进行设置. 如果只需要平铺背景图片,则xml中只需要第二个item中的bitmap即可 来源: oschina 链接: https://my.oschina.net/u/1054662/blog/1795268

关于安卓so的兼容性的简单说明

时光毁灭记忆、已成空白 提交于 2019-12-06 07:55:18
armeabi、armeabi-v7a、mips、x86 、 arm64-v8a 如何理解? ABI:指应用基于哪种指令集来进行编译,ABI以前总共有四种,分别是armeabi、armeabi-v7a、mips、x86,它们都是表示cpu的类型,现在又有了arm64-v8a。 (注意:以下所有讨论不包括mips) 先说以前对于so的平台兼容处理方式吧。 以前安卓都是32位系统,运行的进程都是32位,理论上armeabi的so可以被全平台兼容,所以,理论上我们可以只提供一个armeabi的so就能在所有cpu平台运行了。也就是说如果我们引入了A和B两个库,其中A提供了全平台的 armeabi、armeabi-v7a、x86三 个so,而B只有一个armeabi的so,那么我们可以把B的这个so复制到其他两个文件夹就可以被兼容了。 同时因为现在armeabi的设备比armeabi-v7的要少很多,所以有些应用直接提供了armeabi-v7的so。 现在有了arm64-v8a的CPU以及安卓64位系统,上面的方法就有点例外了。 在安卓64位系统上,同时运行着32位和64位的进程(这点和Windows很像,在64位Windows上也是能同时运行32位和63位的进程的)。 以下讨论是基于64位安卓系统上: 如果一个纯粹的java写的应用,没有使用任何的so,那么默认就应该以64位模式来运行;

gravity和layout_gravity

匆匆过客 提交于 2019-12-06 02:02:20
gravity 这个英文单词是重心的意思,在这里就表示停靠位置的意思。 android:layout_gravity 和 android:gravity 的区别 从名字上可以看到,android:gravity是对元素本身说的,元素本身的文本显示在什么地方靠着换个属性设置,不过不设置默认是在左侧的。 android:layout_gravity是相对与它的父元素说的,说明元素显示在父元素的什么位置。 比如说button: android:layout_gravity 表示按钮在界面上的位置。 android:gravity表示button上的字在button上的位置。 来源: oschina 链接: https://my.oschina.net/u/1415486/blog/302315

浅谈Android动态加载界面设计技巧

老子叫甜甜 提交于 2019-12-05 06:50:24
Android应用如果加载zip格式插件中的类,该类中的界面会需要用纯代码进行编写。插件中的界面是基于加载插件的Activity的。所以插件中的界面基本会用到Dialog作为基础界面。开发过程中会有一些技巧,记录如下: 1、用AlertDialog作为基础界面,如果放置EditText组件,虚拟键盘将会无法显示。解决方法:用Dialog替代。 2、用AlertDialog作为基础界面的好处在于,系统默认会将该界面居中显示,省去不少排版的设置。 3、Activity、Dialog界面是可以屏蔽Home按键的,这个比较狠,看产品设计需要吧。 WindowManager.LayoutParams.TYPE_KEYGUARD WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG 方法是将Dialog .getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); 然后在onKey事件中屏蔽Hone按键即可。对话框的话上面贴出的代码要放在show()之后。否则报 BadTokenException 错误。 4、虚拟键盘显示会导致Activity、Dialog界面上移的问题,Activity可以通过设置 android:windowSoftInputMode="adjustPan"

AndroidICS4.0锁屏流程

笑着哭i 提交于 2019-12-04 08:31:03
先来说说LockScreen分类; 一、无锁屏; 二、锁屏: 1、UnLockScreen: 图案锁、 PIN锁, 密码锁; 2、LockScreen: 波纹锁; 接着我们来看看LockScreen的时序图: 综上所述: 1、createUnlockScreenFor()方法创建的是UnLockScreen界面,代码如下: [java] view plain copy print ? View createUnlockScreenFor(UnlockMode unlockMode) { View unlockView = null ; if (DEBUG) Log.d(TAG, "createUnlockScreenFor(" + unlockMode + "): mEnableFallback=" + mEnableFallback); if (unlockMode == UnlockMode.Pattern) { PatternUnlockScreen view = new PatternUnlockScreen( mContext, mConfiguration, mLockPatternUtils, mUpdateMonitor, mKeyguardScreenCallback, mUpdateMonitor.getFailedAttempts()); view

当心android广告木马恶意使用root权限(发现及清理过程)

☆樱花仙子☆ 提交于 2019-12-03 01:33:19
我的nexus 7平板,到手后自然是root了。平时也不会去开SuperSu,然而某一天,我无意打开SuperSu,居然看到有两个游戏被授予的root权限,心中感到有点不妙。估计是小孩玩的时候,游戏中的恶意插件请求root权限,小孩顺手同意了。 哎,这两个游戏是google play上下的,当即把这两个游戏删除,root权限许可也删除。没多久,一个android.process.acore的进程开始请求root权限。好吧,从名字上来看应该是个系统进程,应该是可以相信的。然而稍微细想一下,要知道原厂出的ROM都是没有root过的,那么原厂ROM里的进程请求root权限是一件奇怪的事。我断然拒绝了这个进程的请求,到了第二天发现电量离奇的没了,看到一个叫“RC Services”的应用消耗了许多的电量。SuperSu里的日志显示 android.process.acore 这个进程开始每过十几分钟到半小时请求一次root权限,显然平板电脑不能正常sleep,导致电量消耗巨大。 平板电脑显然中招了。一段时间以来,只要平板电脑一联网,就会出广告,甚至正在使用时,自动弹出广告的现象也有合理解释了。上网搜索 android.process.acore和RC Services都没有什么有用的信息。到google play上下载了360平板卫士也没有查出个毛来。只有自己动手了。先治标,既然