android开发

RN app打包

♀尐吖头ヾ 提交于 2020-03-24 19:02:16
最近使用React Native做起了移动应用,之前做过一点react,有一点react基础,后来听说RN还不错,就做起了RN项目。为了让辛辛苦苦开发的项目想在手机端运行,就涉及到发布打包。 防止自己长时间不用忘记了,这里做一下笔记,在记录点滴的同时,希望可以帮助正在奋斗的你。 好啦,不多说了,直接说详细的步骤,请认真读完,相信你,也可以轻轻松松发布你的app应用。我把打包总结成了五个步骤: 1、修改打包后的应用名称,同时,ic_launcher.png为应用图标 2、React Native初始化项目在Android平台下默认显示方式跟随设备放置方式而改变。如果希望移动应用的显示方式始终不变,可以修改RN项目目录下的“\android\app\src\main\AndroidManifest.xml”文件,为.MainActivity加入 android:screenOrientation="portrait"> 属性。修改 的内容如下图所示: 3、生成应用的秘钥 Java开发环境自带了秘钥生成工具。可以在命令行窗口执行以下命令生成一个发布秘钥: keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000 其中

H5项目常见问题及注意事项

荒凉一梦 提交于 2020-03-24 15:15:57
转:http://www.open-open.com/lib/view/open1449325854077.html Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 //一、HTML页面结构 <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" /> // width 设置viewport宽度,为一个正整数,或字符串‘device-width’ // height 设置viewport高度,一般设置了宽度,会自动解析出高度,可以不用设置 // initial-scale 默认缩放比例,为一个数字,可以带小数 // minimum-scale 允许用户最小缩放比例,为一个数字,可以带小数 // maximum-scale 允许用户最大缩放比例,为一个数字,可以带小数 // user-scalable 是否允许手动缩放 //二、JS动态判断 var phoneWidth = parseInt(window.screen.width); var phoneScale = phoneWidth/640; var ua = navigator.userAgent; if (

H5项目常见问题及注意事项

徘徊边缘 提交于 2020-03-24 15:05:18
Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 //一、HTML页面结构 <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" /> // width 设置viewport宽度,为一个正整数,或字符串‘device-width’ // height 设置viewport高度,一般设置了宽度,会自动解析出高度,可以不用设置 // initial-scale 默认缩放比例,为一个数字,可以带小数 // minimum-scale 允许用户最小缩放比例,为一个数字,可以带小数 // maximum-scale 允许用户最大缩放比例,为一个数字,可以带小数 // user-scalable 是否允许手动缩放 //二、JS动态判断 var phoneWidth = parseInt(window.screen.width); var phoneScale = phoneWidth/640; var ua = navigator.userAgent; if (/Android (\d+\.\d+)/.test(ua)){ var version = parseFloat(RegExp

android 应用 程序 签名 详解

筅森魡賤 提交于 2020-03-24 13:39:48
1、什么是签名? 如果这个问题不是放在Android开发中来问,如果是放在一个普通的版块,我想大家都知道签名的含义。可往往就是将一些生活中常用的术语放在计算机这种专业领域,大家就开始迷惑了。计算机所做的事情,或者说编程语言所做的事情,不正是在尽可能地模拟现实吗?所以,计算机中所说的签名和生活中所说的签名在本质上是一样的,它所起到的作用也是一致的! 让我们来看看,在现实生活中的签名。比如下面这张图片: 这是女星孙俪的签名。签名就意味着在纸上或别处写下自己的名字,或者说在某处打上一个标记作为你自己的一种特有的标识,当别人看到这个签名的时候,他会知道这是和你有关的,而不是其它人。 2、为什么要给Android应用程序签名? 如果只能用一句简单的话语来回答这个问题的话,我会说:“这是Android系统所要求的”。 Android系统要求每一个Android应用程序必须要经过数字签名才能够安装到系统中,也就是说如果一个Android应用程序没有经过数字签名,是没有办法安装到系统中的!Android通过数字签名来标识应用程序的作者和在应用程序之间建立信任关系,不是用来决定最终用户可以安装哪些应用程序。这个数字签名由应用程序的作者完成,并不需要权威的数字证书签名机构认证,它只是用来让应用程序包自我认证的。 3、为什么我开发的Android应用程序没有做什么签名也能在模拟器和手机上运行?

Android应用程序签名详解

*爱你&永不变心* 提交于 2020-03-24 13:02:48
本文主要讲解 Android 应用程序签名相关的理论知识,包括:什么是签名、为什么要给应用程序签名、如何给应用程序签名等。 1、什么是签名? 如果这个问题不是放在 Android 开发中来问,如果是放在一个普通的版块,我想大家都知道签名的含义。可往往就是将一些生活中常用的术语放在计算机这种专业领域,大家就开始迷惑了。计算机所做的事情,或者说编程语言所做的事情,不正是在尽可能地模拟现实吗?所以,计算机中所说的签名和生活中所说的签名在本质上是一样的,它所起到的作用也是一致的! 让我们来看看,在现实生活中的签名。比如下面这张图片: 这是女星孙俪的签名。签名就意味着在纸上或别处写下自己的名字,或者说在某处打上一个标记作为你自己的一种特有的标识,当别人看到这个签名的时候,他会知道这是和你有关的,而不是其它人。 2、为什么要给 Android 应用程序签名? 如果只能用一句简单的话语来回答这个问题的话,我会说:“这是 Android 系统所要求的”。 Android 系统要求每一个Android应用程序必须要经过数字签名才能够安装到系统中,也就是说如果一个Android应用程序没有经过数字签名,是没有办法安装到系统中的!Android通过数字签名来标识应用程序的作者和在应用程序之间建立信任关系,不是用来决定最终用户可以安装哪些应用程序。这个数字签名由应用程序的作者完成

Android应用程序签名详解

非 Y 不嫁゛ 提交于 2020-03-24 13:02:28
http://blog.csdn.net/lyq8479/article/details/6401093 本文主要讲解Android应用程序签名相关的理论知识,包括:什么是签名、为什么要给应用程序签名、如何给应用程序签名等。 1、什么是签名? 如果这个问题不是放在Android开发中来问,如果是放在一个普通的版块,我想大家都知道签名的含义。可往往就是将一些生活中常用的术语放在计算机这种专业领域,大家就开始迷惑了。计算机所做的事情,或者说编程语言所做的事情,不正是在尽可能地模拟现实吗?所以,计算机中所说的签名和生活中所说的签名在本质上是一样的,它所起到的作用也是一致的! 让我们来看看,在现实生活中的签名。比如下面这张图片: 这是女星孙俪的签名。签名就意味着在纸上或别处写下自己的名字,或者说在某处打上一个标记作为你自己的一种特有的标识,当别人看到这个签名的时候,他会知道这是和你有关的,而不是其它人。 2、为什么要给Android应用程序签名? 如果只能用一句简单的话语来回答这个问题的话,我会说:“这是Android系统所要求的”。 Android系统要求每一个Android应用程序必须要经过数字签名才能够安装到系统中,也就是说如果一个Android应用程序没有经过数字签名,是没有办法安装到系统中的!Android通过数字签名来标识应用程序的作者和在应用程序之间建立信任关系

Android应用签名

ε祈祈猫儿з 提交于 2020-03-24 12:53:53
http://www.cnblogs.com/ghj1976/archive/2011/07/18/2109381.html 为了要签名? 开发Android的人这么多,完全有可能大家都把类名,包名起成了一个同样的名字,这时候如何区分?签名这时候就是起区分作用的。 由于开发商可能通过使用相同的Package Name来混淆替换已经安装的程序,签名可以保证相当名字,但是签名不同的包不被替换。 APK如果使用一个key签名,发布时另一个key签名的文件将无法安装或覆盖老的版本,这样可以防止你已安装的应用被恶意的第三方覆盖或替换掉。 这样签名其实也是开发者的身份标识。交易中抵赖等事情发生时,签名可以防止抵赖的发生。 签名的注意事项 所有的Android应用都必须有数字签名,没有不存在数字签名的应用,包括模拟器上运行的。Android系统不会安装没有数字证书的应用。 签名的数字证书不需要权威机构来认证,是开发者自己产生的数字证书,即所谓的自签名。 模拟器开发环境,开发时通过ADB接口上传的程序会先自动被签有Debug权限,然后才传递到模拟器。如下图所示,Eclipse菜单的Window -> Preferences -> Android –> Build 下显示的是我们默认的调试用的签名数字证书。 正式发布一个Android应用时,必须使用一个合适的私钥生成的数字证书来给程序签名

android软件防反编译与反编译

拟墨画扇 提交于 2020-03-24 07:51:05
3 月,跳不动了?>>> 如何防止 反编译 作为Android应用开发者, 不 得 不 面对一个尴尬的局面,就是自己辛辛苦苦开发的应用可以被别人很轻易的就 反编译 出来。 Google似乎也发现了这个问题,从SDK2.3开始我们可以看到在android-sdk-windows\tools\下面多了一个proguard文件夹 proguard是一个java代码混淆的工具,通过proguard,别人即使 反编译 你的apk包,也只会看到一些让人很难看懂的代码,从而达到保护代码的作用。 下面具体说一说怎么样让SDK2.3下的proguard.cfg文件起作用,先来看看 android-sdk-windows\tools\lib\ proguard.cfg 的内容: [html] view plain copy -optimizationpasses 5 -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -dontpreverify -verbose -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* -keep public class * extends android.app.Activity -keep public

Android对XML文件解析

心不动则不痛 提交于 2020-03-24 06:40:03
HTTP网络传输中的数据组织方式有三种方式: 1、HTML方式 2、XML方式 3、JSON方式 XML的结构解析如下: 1、节点 2、元素 3、属性和属性值 由于XML的扩展性强,致使它需要有稳定的基础规则来支持扩展,该 语法规则 是: 1、开始和结束标签匹配 2、嵌套标签不能互相嵌套 3、区分大小写 Android中,解析Xml数据的三种方式: 1、DOM(org.w3c.dom) “文档对象模型”方式,解析完的Xml将生成一个树状结构的对象。 2、SAX(org.xml.sax) Simple API for XML,以事件的形式通知程序,对Xml进行解析。 3、XMLPULL(org.xmlpull.v1) 类似于SAX方式,程序以“拉取”的方式对Xml进行解析。 SAX技术的介绍 SAX是一种以事件驱动的XML api,由它定义的事件流可以指定从解析器传到专门的处理程序的代码的XML结构,简单的讲,它解析速度快,占用内存少的解析器。这种解析器 比较适合android 等移动设备。 使用SAX的优点是: 因为SAX的优势是流的方式处理,当遇到一个标签的时候,并不会记录下当前所碰到的标签。 也就是说,startEelment方法中,你所知道的信息,仅仅是当前的签名的名字和属性,至于标签的嵌套结构,上层标签的名字,是否有子元素与其他结构相关的信息,都是不知道的。

关于android/java中xml的解析

牧云@^-^@ 提交于 2020-03-24 06:08:36
Http 数据组织方式 HTTP 网络传输中的数据组织方式有三种 1、Html 2、Xml 3、Json XML 称为可扩展标记语言,它与 HTML 一样,都是 SGML (标准通用标记语言), XML 是 Internet 环境中跨平台的,依赖于内容技术,是当前处理结构化文档信息的有力工具,可扩展标记语言 XML 是一种简单的数据存储语言,使用一系列简单的标记描述数据。 XML 结构示意图: <?xml version=”1.0” encoding=”UTF-8”> <persons> <person id=”23”> <name>jack</name> <age>30</age> </person> <person id=”20”> <name>rose</name> <age>25</age> </person> <persons> XML 的结构解析如下 1、节点 2、元素 3、属性和属性值 由于 XML 的扩展性强,致使它需要有稳定的基础规则来支持扩展, 该语法规则是: 1、开始和结束标签匹配 2、嵌套标签不能互相嵌套 3、区分大小写 Android 中,解析 Xml 数据的三种方式: 1、DOM ( org.w3c.dom ) “文档对象模型”方式,解析完的 Xml 将生产一个树状的结构对象 2、SAX(org.xml.sax) SimpleAPI for XML