编辑股票android联系人apk

编辑股票android联系人apk,android,contacts,apk,android-contacts,Android,Contacts,Apk,Android Contacts,我正在尝试编辑联系人和拨号程序,以便可以选择显示昵称字段,而不是名字或姓氏。当前在联系人应用程序中,如果转到“菜单>显示选项>查看联系人姓名为”,则唯一可用的选项是选择名字或姓氏。我已经对apk进行了反编译,并搜索了它的所有资源(可能还不够好),但没有找到该选项的位置。我知道这是我个人和许多其他人渴望并要求的一项功能。实现这个应该不难,但我就是找不到添加/修改代码的地方 有什么想法吗?修改APK基本上就是搜索十六进制ID: 在strings.xml中搜索包含“First Name First”和

我正在尝试编辑联系人和拨号程序,以便可以选择显示昵称字段,而不是名字或姓氏。当前在联系人应用程序中,如果转到“菜单>显示选项>查看联系人姓名为”,则唯一可用的选项是选择名字或姓氏。我已经对apk进行了反编译,并搜索了它的所有资源(可能还不够好),但没有找到该选项的位置。我知道这是我个人和许多其他人渴望并要求的一项功能。实现这个应该不难,但我就是找不到添加/修改代码的地方


有什么想法吗?

修改APK基本上就是搜索十六进制ID:

在strings.xml中搜索包含“First Name First”和“Last Name First”文本的字符串或字符串数组。找到该字符串或数组的名称,并在public.xml中搜索这些ID。使用这些数字搜索smali文件,其中是使用这些十六进制ID的数组

  • 在数组字符串中添加一个新条目
  • 再次编译和反编译以创建新ID,同时考虑新字符串
  • 相应地修改使用相同ID找到的smali文件
  • 提示:如果id以0开头,则仅使用最后七位数字搜索smalis。apktool会去除这些零

    提示:首先查找
    显示选项(视图)给定的(名称)

    浏览开源代码可能会有很大帮助:)

    将smali文件视为已翻译的java代码。要开始学习修改smali文件,请参见我的答案:

    在这里:


    如果有可用的源代码,我不会对APK进行反编译。找到源代码并仔细阅读。注释、变量名等将保持完整,并应有文件记录too@HXCain我假设他想修改一些特定的固件。通常,这些应用程序没有可用的代码,并且变量可能与股票应用程序不同。无论如何,是的,首先浏览源代码是最好的选择。谢谢Aleadam。这很有帮助。不过我还是有一些理解上的困难。我在strings.xml中找到了这些字符串,在smali文件和public.xml中也找到了十六进制ID。我不知道从那里去哪里。我尝试在strings.xml中添加昵称字符串。它是否应该在public.xml和smali文件中自动生成相应的ID?谢谢你的帮助@亚历克斯·莫丁·斯马利斯不是一件容易的事。将生成public.xml中的ID,但不会生成smali代码。你需要自己补充一下。我为答案添加了一些链接。