当下,移动动态化已经成为各大公司都回避不了的问题,产品的快速迭代对技术提出了更高的要求,而移动端的动态化方案也是层出不穷:Hypid、结构化 Native View、React Native、Weex,什么样的方案才是适合自己团队的呢?本文将分享饿了么蜂鸟团队在过去两年多业务快速增长过程中,移动动态化方面的实践和探索。什么是移动动态化?移动指的是移动端,包括、iOS。动态化则是动态部署和逻辑下
动态权限申请前言一、一行代码实现动态权限申请二、封装权限申请为单独的类 前言写这篇博客的想法是尽量给没有基础的朋友介绍如何动态的申请安的权限。希望大家可以学习新的版本开发,而不是偷懒去下个5去复制粘贴完事。大二,也是刚开始学,老师用的版本都是4,自己想用10,无奈动态权限申请老师也不讲,只能自己去找。 但是找了很多,都没有找到一个说的比较详细的做法,导致一直没真正理解动
转载 2023-08-17 11:16:45
65阅读
看了一篇文章讲插件化开发,感觉有点意思。所以就试了一下.首先要知道插件化是什么,或者说为什么要用到它,应用场景是什么。大家都知道在Android App中,一个应用程序dex文件的方法数最大不能超过65536个,否则,你的app将出异常了,那么如果越大的项目那肯定超过了。所以就有人用了插件化的形式。这里会涉及到一个概念就是动态加载技术。动态加载技术就是使用类加载器加载相应的apk、dex、jar(
转载 2024-04-22 11:25:41
126阅读
Android开发的四大组件:一、Activity详解 二、Service详解 三、Broadcast Receiver详解 四、Content Provider详解一、Activity Activty的生命周期的也就是它所在进程的生命周期。一个Activity的启动顺序: onCreate()-->onStart()-->onResume()当另一个Activity启动时: 第一个A
//作为示例还可以,但没有很好使用MVC,晚点会整理新的版本核心提示:android控件动态使用 通常android里的界面布局都是在XML里设定好的 也就是说 在程序中,不能更改界面上的元素数量等, 比如上图所示的一个 聊天会话界面 当有人发言就要增加一个TextView, 这就是动态增加控件, 这就不能在XML里事先布局了! 不过还好,ANDRandroid控件动态使用通常android里的界
转载 2023-08-04 11:48:06
69阅读
这篇文章是基于Android ConstraintLayout完全解析和性能分析(章节一)基础上对属性的深入详解,如果之前对Android ConstraintLayout不了解或者不会使用的,请查看章节一的内容。若是有一定的了解,想深入对ConstraintLayout属性的了解及性能的分析,请直接阅读本章节内容。一、ConstraintLayout属性讲解先简单了解一下我们使用Constrai
转载 2024-03-28 10:47:32
206阅读
在Android 5.1 (API level 22) 及其以下版本上,系统在APP安装时要求用户授权所有Manifest申请的权限,否则APP不能安装,并且安装后权限也撤销不了。http://7jpolu.com1.z0.glb.clouddn.com/pre-marshmallow-permission.jpg 而在Android 6.0(Marshmallow_棉花糖)及其以上版本
原创 2017-11-17 10:20:56
737阅读
 开启有线网卡  setpropdhcp.eth0.reason BOUND setpropdhcp.eth0.result ok 设置ip及子网掩码  ifconfig eth0192.168.12.48 netmask 255.255.252.0 设置网关  route add defaultgw 192.168.12.254 dev eth0 设置DN
转载 2024-02-01 11:46:29
186阅读
App加固技术功能发展通过这几年的发展APP加固技术,不断得到快速迭代发展,加固的强度也在不断的提升。加固技术的发展主要经历:动态加载、内存不落地加载、指令抽取、指令转换、虚拟机保护。下面就分别对这些技术实现进行解析。动态加载Android动态加载加固技术用于保护App应用的逻辑不被逆向与分析,最早普遍在恶意软件中使用,它主要基于Java虚拟机提供的动态加载技术。由于动态加载技术主要依赖于java
转载 2024-02-22 12:30:09
19阅读
      不安装APK,仍然可以调用APK文件中的Java类,这种访问Java类的方式称为“动态引用APK文件”,——相当于传统的java程序动态调用jar文件。      APK文件本质上是ZIP格式的压缩文件,要想动态调用APK文件,在APK文件中必须包含一个classes.dex文件(classes.dex文件是Android应用
转载 2024-05-08 16:28:22
74阅读
话说什么是动态换肤?这里举个例子:在APP中可以下载某一个皮肤包,然后应用起来整个APP的界面就发生了改变,诸如某些图片,文字字体,文字颜色等等。那么这种功能是怎么实现的呢?其实初步分析一把,应该就是在应用了皮肤包之后这些换肤了的控件的某些布局属性发生了变化,比如width、height、src、background、textsize、textcolor等。话说回来,在没有实现换肤功能之前我们的A
Part One权限区分 Android 6.0 为了保护用户隐私,将一些权限的申请放在了应用运行的时候去申请, 比如以往的开发中,开发人员只需要将需要的权限在清单文件中配置即可,安装后用户可以在设置中的应用信息中看到:XX应用以获取**权限。用户点击可以选择给应用相应的权限。此前的应用权限用户可以选择允许、提醒和拒绝。在安装的时候用户是已经知道应用需要的权限的。但是这样存在一个问题,就
近日,Android版手机QQ空间2.4 全新发布,新版可支持GIF动态说说、多图上传等功能,并在 “可能认识的人”里显示用户真实头像,方便发现遗漏的好友,拓展自己的关系链。同时,它还全面优化了界面设计和操作设计。下面一起来看看这个新版--GIF动态说说:想怎么玩就怎么玩很多“说说控”喜欢随时自拍发说说,随时随地与好友分享,发一组GIF动图无疑可以让“说说”更炫酷,吸引更多好友关注,随时展示自己的
Android动态化UI框架一、Virtualview-AndroidGitHub:alibaba/Virtualview-Android简介:A light way to build UI in custom XML.Virtualview-Android是阿里界面方案:七巧板(Tangram)中的相关开源库之一。 alibaba/Tangram-AndroidTangram is a mo
转载 2023-07-30 21:58:48
15阅读
  本文一个运行于android的python解释器的例子,版本为python2.7,也可以是其它版本,Python共享库采用NDK编译。这里的例子为了说明如何初始化python解释器,运行python脚本,例子中的界面比较简单,一个输入栏用于输入python脚,一个输出栏用于显示运行的结果。Android代码基于java,需要通过java调用python。  这里P
转载 2023-11-02 09:39:21
69阅读
大陆服务器都是需要备案的,想必这是众所周知的,备案的过程繁琐且严格。除此之外,备案还有期限的限制,若网站没有在规定的期限内完成备案,可能会导致我们不能在相应的时间内完成建站。而海外服务器是不存在备案的问题的,减少了许多备案所带来的不必要的麻烦。所以一些HS行业的人搭建网站或是APP的时候会选择用海外服务器。那么为什么会被封呢?第一、违背有关相关法律法规 客户尽管使用的是海外服务器,但也不可以肆无忌
效率低下的配置调试了很久..还是有些问题没有解决.. 首先说一点题外话:对于android工程中的R文件的损害或丢失,只需要直接点击android工程,选择android tools 选项,点击Fix Project Properties就会自动生成gen 文件夹下的R文件——另外保证你资源文件的正确性,比如:setContentView(R.layout.main)——此时会自动更新l
转载 2023-07-28 16:10:24
67阅读
android将布局与具体操作分为xml文件和java文件,xml文件主要负责布局,但是xml文件完成的所有任务java文件都是可以完成的,并且解析xml文件也是需要资源的,只不过google推荐这样使用,一是为了界面和逻辑分离,二是xml的逻辑控制很方便。所以牺牲一点资源来解析xml文件是可取的。 我将其分为静态布局和动态布局(也可以称为交互),静态布局直接加载,方便查看和修改。动态布局需要代
转载 2023-09-12 22:21:39
92阅读
动态换肤(监听xml布局初始化,动态加载类,加载插件资源文件)一般小公司是不会接触到换肤的,尤其是动态下载皮肤插件来实现换肤。那么,今天我们来一探究竟。如何实现加载从网上下载的皮肤插件,并且替换到相应的控件中!大致涉及到4个步骤:1、下载皮肤插件(通常为apk,后期用skin.apk来表示皮肤插件)到本地2、根据皮肤插件skin.apk的绝对路径,加载插件里的资源文件3、准确找到需要换肤的控件4、
最近好几天来一直在看动态调试。里面介绍了多种IDA动态调试的情形,比如调试JNICALL,调试JNI_Onload等等。步骤大概都是这样:执行android_server端口转发 adb forward tcp:23946 tcp:23946调试模式启动程序 adb shell am start -D -n 包名/类名IDA附加静态找到目标函数对应所在模块的偏移地址Ctrl+S找到对应模块的基地址
转载 2023-08-01 14:23:26
111阅读
  • 1
  • 2
  • 3
  • 4
  • 5