拥有.apk可以提取其源代码。 Android 应用程序安全吗? [复制]

2024-01-31

我开发 Android 应用程序,其中一些代码非常私密和机密。我将加密算法放入我的代码中以提高安全性。

但最近我读到,当人们拥有 .apk 文件时,他们可以 100% 正确地提取 java 源代码Source http://www.coders-hub.com/2013/04/how-to-convert-apk-file-into-source.html#.WHBLRlV9600.

不仅如此,人们还可以从 Google Play 商店获取 .apkSource http://www.technotraps.com/how-to-download-apk-files-directly-from-play-store/

这是否意味着拥有我的 .apk 的人可以查看我的所有源代码(java、.xml 布局、库)?如果是的话,我为拥有一个安全的应用程序所做的所有努力都没有实现。


是的,希望有一种方法可以阻止其他人获得你的辛苦劳动项目full source code。 使能够ProGuard为您的 Android 应用程序。ant将会通知ProGuard混淆你的代码。 您的代码将尽可能缩小。许多函数和变量名称将被替换为没有人可以解码或理解的缩小形式:)

更多详细信息请参见:https://developer.android.com/studio/build/shrink-code.html https://developer.android.com/studio/build/shrink-code.html

Note that enabling ProGuard takes build time much more than normal build time.So better to do it before release of your app.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

拥有.apk可以提取其源代码。 Android 应用程序安全吗? [复制] 的相关文章

  • 随着手指的滑动改变活动

    我想知道如何通过滑动手指来更改活动 或者从右向左滑动手指并更改活动 就像我们在智能手机上看到图片的方式一样 有人知道吗 Cumpz 请参阅以下链接 http savagelook com blog android swipes or fli
  • 使用 gradle-retrolambda 和 Lightweight-Stream-API 过滤 Android 中的对象列表

    我正在尝试在我的 Android 应用程序中过滤 Java 中的对象列表 为此我遵循这个答案 https stackoverflow com a 13140130 3546389 Java 8建议 但由于Android SDK不支持Lamb
  • 按钮点击和声音之间的延迟

    我不太明白为什么按钮点击和声音之间有延迟 以下是我的代码 button Button findViewById R id playBtn final MediaPlayer playButtonClick MediaPlayer creat
  • 如何检测手机一整圈(360 度)?

    由于我在网络上搜索没有找到任何相关答案 因此我发布了有关检测的问题360度转弯使用加速度计绕其轴的 Android 设备 例如 在横向模式下围绕 y 轴 假设在起始位置 y 值为 0 设备平坦于地面 当手机向前旋转 90 度时y 10 18
  • Android Studio 模拟器无法加载 Windows 10

    我在 Windows 10 上全新安装了 android studio 其中包含 android api 22 的所有软件包 当我运行模拟器时 我收到以下消息 C Users admin AppData Local Android sdk
  • Android 模拟器在 Windows 7 64 位上崩溃

    我是一名 Android 开发新手 到目前为止只在我的 Android 手机上运行了 Hello World 当我尝试在模拟器模式下运行我的应用程序时 我看到带有键盘和接听 挂断按钮的模拟器窗口 但在我的应用程序运行之前我收到一个窗口对话框
  • SDK 管理器缺少模拟器的旧版 Android 系统映像

    我刚刚重新安装了 ADT 捆绑包 20130522 和 Android Studio 因为我的 eclipse 安装再次搞砸了 但那是另一个故事了 在任一版本中 当我启动 SDK Manager 时 都没有任何 2 2 的系统映像 只有 2
  • Android 操作栏 SearchView 作为自动完成功能?

    我在操作栏中使用 SearchView 我想在搜索视图上使用自动完成功能来从数据库中获取结果 这可能吗 或者我是否需要使用自定义文本框 然后添加自动完成功能 所以我只需要对 v7 版本执行此操作 并沮丧地发现我不能简单地使用 ArrayAd
  • openFileOutput 在单例类中无法正常工作 - 想法/解决方法?

    作为一名 Android 开发新手 我遇到了一些奇怪的问题 我想创建一个类 它方法其他类 活动 任何可以用于以某种特殊方式处理文件的类 假设为了简单起见 我们将记录一些内容 如果我在活动中执行以下操作 例如在 OnClick 侦听器中 则一
  • Android Studio 与 Google Play 服务的编译问题

    我正在运行 Android Studio 0 8 4 并在 Android Studio 0 8 2 上尝试过此操作 我正在运行 Java JDK 1 8 0 11 并尝试使用 JDK 1 8 0 05 每当我尝试构建我的 android
  • Ionic 4:硬件后退按钮重新加载应用程序

    从事项目并陷入问题 硬件后退按钮重新加载应用程序 我在此应用程序中使用 Angular Router 我退出应用程序的代码 ionViewDidEnter this subscription this platform backButton
  • 彩信数据总是错误

    我正在从 Galaxy S6 读取短信和彩信数据 所有 SMS 消息都有一个date像这样的字段1456252633000 该数字是 unix 时间戳 1000 我发送 未收到 的彩信具有如下日期字段 1440628863时间戳是正确的 u
  • 如何切换状态栏?

    我正在寻找一种显示和隐藏状态栏的方法onClickListener 但仅显示其有效 WindowManager LayoutParams lp getWindow getAttributes if isStatusbarVisible lp
  • Horizo​​ntalScrollView 将 GridView 缩小为小行

    当我将 Horizo ntalScrollView 放在 GridView 周围时 GridView 会被压缩到左侧的一个小列中 Gridview 的垂直滚动条甚至出现在左侧 Horizo ntalScrollView 的宽度设置为 fil
  • Android 导航 DeepLinks - 如何区分使用导航操作进行导航与深层链接

    我有导航操作和深层链接 根据您导航的位置 将您带到某个片段 我想确定是使用了深层链接还是仅使用了导航操作 这正是KEY DEEP LINK INTENT https developer android com reference andro
  • 谷歌地图URL中参数的含义是什么

    我正在 Android 上使用 Webkit 浏览器 我想在以下 URL 中获得一个红色 A 符号
  • 突出显示菜单抽屉/滑动菜单中的所选项目

    使用的库 https github com SimonVT android menudrawer https github com SimonVT android menudrawer https github com JakeWharto
  • Android IntentService无法实例化类;没有空构造函数

    我有一个MainActivity需要访问在线 API 从而使用网络资源 的类 这需要我在单独的文件中创建的后台线程HttpRequestService java MainActivity java public class MainActi
  • Android 可扩展列表视图随机播放子项

    你好 我正在使用 Android Expandable listview 并用不同的视图在其中膨胀子视图 我遇到的问题是 当我展开视图然后打开另一个父视图时 布局中的子视图会变得混乱并在代码中膨胀错误的布局 这是我的两个项目的示例代码 这是
  • Android:通过查找带有标签而不是 ID 的容器来添加片段

    我正在使用 for 循环创建片段的多个实例 在每个片段中 我需要添加另一组子片段 为此 我需要找到正确的容器 如果我使用容器的 ID 所有子片段都会添加到第一个父片段 而不是它们自己的父片段 在我的主要片段中 for ParentFragm

随机推荐

  • 如何在 if else 语句中使用微调器和数字选择器的选定值

    我想一起使用数字选择器和旋转器的值 在选择旋转器的值后 然后数字选择器用户输入搜索 这将统计另一个具有列表视图的活动 我想根据所选值显示列表的选择性项目 package myfyp pkg futureadvisor import java
  • 如何检查react-native库的64位兼容性

    我已将我的react native项目升级到0 59 x 以便它可以提供64位版本 我现在需要检查我使用的每个库是否提供64位版本 例如react native firebase或各种其他流行的图书馆 我已经解压了 APK 并观察到 x86
  • 如何在列表项长按时弹出确认删除对话框?

    我正在学习在线教程 并尝试自己实现一些功能 当检测到长按列表项时 如何弹出对话框来提醒用户 以下是该教程中的一些代码 public class FriendList extends ListActivity private static f
  • 找到不是直接来自我的代码的托管异常的来源?

    如果这确实是一个超级用户问题 我提前道歉 我只是不确定 但这似乎更多地取决于开发人员 方面而不是技术支持方面 这不一定是问题 但它确实让我对我的系统彻底抓狂 它也只发生在我的电脑上 当我启动任何应用程序时 即使是空白的 WPF 应用程序 我
  • 我可以限制 AWS Lambda 的并发调用吗?

    我有一个 Lambda 函数 该函数由对 S3 存储桶的 PUT 操作触发 我想限制此 Lambda 函数 使其一次仅运行一个实例 我不希望两个实例同时运行 我浏览了 Lambda 配置和文档 但没有看到任何明显的内容 我可以编写自己的锁定
  • 并行 linq 中的 let 子句是否强制并行计算?

    在 xamarin iOS 网站上有以下并行 linq 示例 from item in items AsParallel let result DoExpensiveWork item select result 这个可以不写吗 from
  • QnA 机器人无法正确显示表格格式

    我的 QnA 制造商知识库当前由 pdf 文件训练 http download microsoft com download 2 9 B 29B20383 302C 4517 A006 B0186F04BE28 surface pro 4
  • 更改 Laravel 刀片分隔符

    我知道您可以使用以下命令更改默认刀片分隔符 Blade setEscapedContentTags Blade setContentTags 但是我不知道应该把它放在哪里 这样它只会影响单个刀片模板 而不是把它放在app start glo
  • 类成员——Java 与 Python

    我现在从 Java 开始学习 Python 我尝试理解Python中类成员的概念 下面是一个 Java 示例程序 class Hello int x 0 void ex x 7 public static void main String
  • Fancybox 无法处理来自 Twitter API 的图像

    使用 Fancybox 2 下面的示例可以完美运行 省略其他代码 a class fancybox href https si0 twimg com profile images 2169856486 avatar jpg title so
  • 如何读取 Micronaut 中的应用程序属性?

    我使用指南将 AWS SES API 集成到我的 Micronaut Groovy 应用程序中在 micronaut 中发送邮件 http guides micronaut io micronaut email groovy guide i
  • 在 C++ 构造函数中分配内存的正确方法是什么?

    这是通过分配内存的正确方法new在 C 构造函数中 参数列表中的第一种方式 class Boda int memory public Boda int length memory new int length Boda delete mem
  • 用于左包装字节元素的高效 sse shuffle mask 生成

    使用 sse 优化以下代码的有效方法是什么 uint16 t change1 uint8 t pSrc uint8 t pDest if change1 0x0001 pDest pSrc 0 if change1 0x0002 pDest
  • 如何从保存的 XGBoost 模型获取参数

    我正在尝试使用以下参数训练 XGBoost 模型 xgb params objective binary logistic eval metric auc lambda 0 8 alpha 0 4 max depth 10 max delt
  • 闪亮降级fontawesome 5至4

    我正在做一个与 fontawesome 4 7 非常相关的闪亮项目 它给我们带来了巨大的价值 作为 fontawesome 的免费用户 我认为升级到 5 3 1 没有任何优势 许多免费图标变得更加丑陋 粗糙 并且必须付费购买专业版才能获得类
  • Windows 8 上的 Visual Studio 2008/2010 - 问题?

    我正在寻找有关在 Windows 8 x64 上使用 Visual Studio 2008 和 2010 的问题所提供的任何信息 我已经找到了以下内容article http support microsoft com kb 2735834
  • 结合网格/包 Tkinter

    我知道过去关于网格和包有很多问题 但我只是不明白如何将两者结合起来 因为我在两个方向 行 列 扩展我的 表格 时遇到困难 我希望按钮保持相同的大小 但始终位于窗口底部 然而 我希望通过调整窗口大小来自动扩展 表格 但似乎无法使其工作 将 w
  • iOS 中的 Crashlytics 无法继续执行 Fabric 应用程序中的“构建您的项目”

    我正在为我的 iOS 应用程序安装 Crashlytics 我通过他们的网站链接下载了它 并完成了集成框架 添加运行脚本等的所有步骤 我遇到了问题 因此我删除了框架并决定重新开始并尝试全新安装 但是 Fabric 应用程序更新到了较新的版本
  • 解析推送通知:发生另一个错误

    自从昨晚用 Parse 测试以来 我遇到了一个奇怪的问题 我能够很好地发送推送通知 但现在当我通过在线解析推送通知工具发送推送通知时 我的推送通知都没有被发送 Edited好吧 看来这只是本地环境的问题 当我测试推送通知到通过试飞安装的测试
  • 拥有.apk可以提取其源代码。 Android 应用程序安全吗? [复制]

    这个问题在这里已经有答案了 我开发 Android 应用程序 其中一些代码非常私密和机密 我将加密算法放入我的代码中以提高安全性 但最近我读到 当人们拥有 apk 文件时 他们可以 100 正确地提取 java 源代码Source http