Android开发App如何进行加固? 10

 我来答
chenyong199202
推荐于2017-08-15 · TA获得超过267个赞
知道小有建树答主
回答量:148
采纳率:0%
帮助的人:73.3万
展开全部
1.避
免技巧:使用内部API。即便我们总是建议不要这么做,但还是有一些开发者选择使用那些不支持或者内部的API。例如,许多开发者使用内部的亮度控制和蓝
牙切换API,这些API出现在1.0和1.1版本上。一个Bug——在Android
1.5上进行了修正——允许App在不需要请求权限的情况下使用这些API。结果,使用了这些API的App在1.5上挂掉了。如果你在App中使用了这
些内部API,你需要做的是:停止这一做法,更新你的程序。

2.避
免技巧:直接操作Settings。严格来讲,这一条不算,因为我们可以通过Android本身进行操作。但之所以我们加上了这一条,是因为一些开发者做
了一些调皮的事情:一些App悄无声息地修改了系统设定,而没有通知用户。例如,一些App没有询问用户就直接打开了GPS,而另外一些则可能直接打开了
数据传输。

因此,应用程序不能直接操作某个特定的系统设定值,即便是它们之前能这么做。例如,App不能直接打开或关闭GPS。不是说使
用会导致App崩溃,而是不应该使用这些API。代替的,App需要发出一个Intent来启动相应的Settings配置画面,这样用户可以手动地修改
这些设定。详细情况可以参考android.provider.Settings.Secure类,你可以在1.5_pre(和之后的)SDK文档中找
到。注意,只有那些移动到Settings.Secure类中设定受到影响。其它的,还会像Android 1.1那样有着相同的功能。

3.避
免技巧:过分布局。由于View渲染部分的变化,在布局中,过于深(超过10层左右)或过于多(超过30个左右)的View树层次可能会导致程序崩溃。过
于复杂的布局总归是有危险的,尽管你可以认为Android
1.5已经好于1.1。大多数开发者不需要对此担心,但如果你的App有着非常复杂的布局,你还是应该对其“瘦身”。你可以使用一些高级的布局类,如
FrameLayout和TableLayout,来简化你的布局。

4.避
免技巧:不好的硬件假设。Android
1.5支持软键盘,因此,不久就会有很多设备不再包含物理键盘。如果你的程序假设物理键盘存在(例如,如果你创建一个自定义的View,并接收键按下消
息),你必须保证在只有软键盘的设备上也工作正常。想了解更多关于这方面的信息,请继续关注这个Blog,我们将会有更多关于处理软键盘的详细资料。

5.避
免技巧:无意识的旋转。运行Android
1.5(及以上)的设备能够根据用户手持设备的方向自动地旋转屏幕。一些1.5的设备默认这么做,而其它的需要用户手动设置。应用程序自己的重定向在某种
程度上会导致不可预期的行为(不论是使用加速度计还是其它一些东西)。这种情况通常发生在应用程序假设有物理键盘时才能旋转;如果设备没有物理键盘,这些
App就不能进行重定向,而这明显就是个编码错误。开发者应该明确应用程序能在任何时间都能处理重定向。
同样,App可以使用加速度计做到与系统
相同的事情——直接重定向自己,这也会引发奇怪的结果。一些App使用加速度计来监测像晃动动作什么的,而又不将其方向锁定为垂直或水平,经常会导致在方
向上来回翻动。而这就会激怒用户。(你可以在manifest文件中使用android:screenOrientation特性来锁定App的方向为垂
直或水平。)
追问
不要复制了,就是这个没有解决我的问题我才问的=。=
深圳爱加密科技有限公司
2015-12-02 · 移动信息安全智能服务提供商
深圳爱加密科技有限公司
爱加密是国内最专业的移动安全体系服务商,专注于为移动领域的金融、游戏、企业级应用及互联网开发者提供安全可靠的保护解决方案,并提供涉及App开发、运营等环节的一站式服务。
向TA提问
展开全部
app加固是个大学问,要考虑很多方面的东西,包括dex动态分离加密,so库文件加密,防逆向纂改等等,希望可以帮到你。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
greystar_cn
2015-12-01 · 知道合伙人软件行家
greystar_cn
知道合伙人软件行家
采纳数:16407 获赞数:17260
本人主要从事.NET C#方向的技术开发工作,具有10多年的各类架构开发工作经验。

向TA提问 私信TA
展开全部
实现应用程序不会随着新版本的Android平台装载到用户设备上而造成挂机是很重要的。下面的列表列举了五种我们观察到的比较糟糕的实现方式。你可以把这些看作是Android开发的“反模式”(即避免技巧)。
http://jingyan.baidu.com/article/39810a23c0edbcb637fda65b.html
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
互联网纷说
2021-04-26 · 分享互联网大事件,运营事件,热点分析
互联网纷说
采纳数:67 获赞数:223

向TA提问 私信TA
展开全部

APP加固核心技术

DEX 加密

对 DEX 文件整体加密并隐藏,防止反编译。

DEX 虚拟化

将 DEX 方法中的字节码转换为自定义的虚拟机指令,由自定义解释器解释执行,保护后无法被还原。

资源加密

加密 apk 中的图片,配置,脚本等资源文件,防止被窃取。

ptrace防注入

通过双进程 ptrace 守护技术,防止其它进程对 APK 进程附加调试或注入。

反调试

多种系统相关的检测技术检测调试器,发现调试器后清场退出。

SO 库保护

对 SO 库中的代码段压缩加密,隐藏导入导出函数。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式