开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 1308|回复: 1
收起左侧

[android] dalvik 语法求助

[复制链接]
结帖率:77% (51/66)
发表于 2018-2-18 18:41:02 | 显示全部楼层 |阅读模式   江西省赣州市
5精币
  1.     .line 751
  2.     const-string v9, "{"login_name":"%s","password":"%s"}"

  3.     const/4 v10, 0x2

  4.     new-array v10, v10, [Ljava/lang/Object;

  5.     const/4 v11, 0x0

  6.     aput-object p1, v10, v11

  7.     const/4 v11, 0x1
复制代码
"{\"login_name\":\"%s\",\"password\":\"%s\"}"
这个字符串中的%s它是怎么替换的?替换的内容在哪里来的?
一楼有完整的代码


回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:77% (51/66)
 楼主| 发表于 2018-2-18 18:41:15 | 显示全部楼层   江西省赣州市
  1. .method public login(Ljava/lang/String;Ljava/lang/String;Lcom/nd/smartcan/accountclient/model/LoginOptions;Ljava/lang/String;)Lcom/nd/smartcan/accountclient/core/LoginResult;
  2.     .locals 13
  3.     .param p1, "loginName"    # Ljava/lang/String;
  4.     .param p2, "password"    # Ljava/lang/String;
  5.     .param p3, "options"    # Lcom/nd/smartcan/accountclient/model/LoginOptions;
  6.     .param p4, "orgName"    # Ljava/lang/String;
  7.     .annotation system Ldalvik/annotation/Throws;
  8.         value = {
  9.             Ljava/lang/IllegalArgumentException;
  10.         }
  11.     .end annotation

  12.     .annotation runtime Ljava/lang/Deprecated;
  13.     .end annotation

  14.     .prologue
  15.     .line 744
  16.     if-eqz p1, :cond_0

  17.     if-nez p2, :cond_1

  18.     .line 745
  19.     :cond_0
  20.     new-instance v9, Ljava/lang/IllegalArgumentException;

  21.     const-string v10, "input argument is wrong"

  22.     invoke-direct {v9, v10}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

  23.     throw v9

  24.     .line 747
  25.     :cond_1
  26.     const-string v8, "${UCBaseUrl}tokens"

  27.     .line 748
  28.     .local v8, "url":Ljava/lang/String;
  29.     new-instance v2, Lcom/nd/smartcan/core/restful/ClientResource;

  30.     invoke-direct {v2, v8}, Lcom/nd/smartcan/core/restful/ClientResource;-><init>(Ljava/lang/String;)V

  31.     .line 750
  32.     .local v2, "cr":Lcom/nd/smartcan/core/restful/ClientResource;
  33.     invoke-static/range {p4 .. p4}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

  34.     move-result v9

  35.     if-eqz v9, :cond_6

  36.     .line 751
  37.     const-string v9, "{"login_name":"%s","password":"%s"}"

  38.     const/4 v10, 0x2

  39.     new-array v10, v10, [Ljava/lang/Object;

  40.     const/4 v11, 0x0

  41.     aput-object p1, v10, v11

  42.     const/4 v11, 0x1

  43.     .line 752
  44.     invoke-virtual {p0}, Lcom/nd/smartcan/accountclient/UCManager;->getUCManagerProxy()Lcom/nd/smartcan/accountclient/proxy/UCManagerProxy;

  45.     move-result-object v12

  46.     invoke-interface {v12, p2}, Lcom/nd/smartcan/accountclient/proxy/UCManagerProxy;->encrypt(Ljava/lang/String;)Ljava/lang/String;

  47.     move-result-object v12

  48.     aput-object v12, v10, v11

  49.     .line 751
  50.     invoke-static {v9, v10}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

  51.     move-result-object v0

  52.     .line 757
  53.     .local v0, "body":Ljava/lang/String;
  54.     :goto_0
  55.     invoke-virtual {v2, v0}, Lcom/nd/smartcan/core/restful/ClientResource;->addField(Ljava/lang/String;)Lcom/nd/smartcan/core/restful/ClientResource;

  56.     .line 759
  57.     if-eqz p3, :cond_5

  58.     .line 760
  59.     invoke-virtual/range {p3 .. p3}, Lcom/nd/smartcan/accountclient/model/LoginOptions;->getConnectionTimeout()I

  60.     move-result v1

  61.     .line 761
  62.     .local v1, "connectionTimeout":I
  63.     invoke-virtual/range {p3 .. p3}, Lcom/nd/smartcan/accountclient/model/LoginOptions;->getReadTimeout()I

  64.     move-result v4

  65.     .line 762
  66.     .local v4, "readTimeout":I
  67.     invoke-virtual/range {p3 .. p3}, Lcom/nd/smartcan/accountclient/model/LoginOptions;->getRetryAttempts()I

  68.     move-result v6

  69.     .line 763
  70.     .local v6, "retryAttempts":I
  71.     invoke-virtual/range {p3 .. p3}, Lcom/nd/smartcan/accountclient/model/LoginOptions;->getRetryDelays()I

  72.     move-result v7

  73.     .line 764
  74.     .local v7, "retryDelays":I
  75.     if-eqz v1, :cond_2

  76.     .line 765
  77.     invoke-virtual {v2, v1}, Lcom/nd/smartcan/core/restful/ClientResource;->setConnectionTimeout(I)V

  78.     .line 767
  79.     :cond_2
  80.     if-eqz v4, :cond_3

  81.     .line 768
  82.     invoke-virtual {v2, v4}, Lcom/nd/smartcan/core/restful/ClientResource;->setReadTimeout(I)V

  83.     .line 770
  84.     :cond_3
  85.     if-eqz v6, :cond_4

  86.     .line 771
  87.     invoke-virtual {v2, v6}, Lcom/nd/smartcan/core/restful/ClientResource;->setRetryAttempts(I)V

  88.     .line 773
  89.     :cond_4
  90.     if-eqz v7, :cond_5

  91.     .line 774
  92.     invoke-virtual {v2, v7}, Lcom/nd/smartcan/core/restful/ClientResource;->setRetryDelay(I)V

  93.     .line 780
  94.     .end local v1    # "connectionTimeout":I
  95.     .end local v4    # "readTimeout":I
  96.     .end local v6    # "retryAttempts":I
  97.     .end local v7    # "retryDelays":I
  98.     :cond_5
  99.     :try_start_0
  100.     new-instance v9, Lcom/nd/smartcan/accountclient/core/LoginResult$LoginResultConverter;

  101.     invoke-direct {v9}, Lcom/nd/smartcan/accountclient/core/LoginResult$LoginResultConverter;-><init>()V

  102.     invoke-virtual {v2, v9}, Lcom/nd/smartcan/core/restful/ClientResource;->post(Lcom/nd/smartcan/core/restful/IJsonConverter;)Ljava/lang/Object;

  103.     move-result-object v5

  104.     check-cast v5, Lcom/nd/smartcan/accountclient/core/LoginResult;
  105.     :try_end_0
  106.     .catch Lcom/nd/smartcan/core/restful/ResourceException; {:try_start_0 .. :try_end_0} :catch_0

  107.     .line 787
  108.     .local v5, "result":Lcom/nd/smartcan/accountclient/core/LoginResult;
  109.     :goto_1
  110.     const/4 v9, 0x0

  111.     const/4 v10, 0x0

  112.     invoke-virtual {p0, v5, v9, v10}, Lcom/nd/smartcan/accountclient/UCManager;->convertLoginResultToCurUser(Lcom/nd/smartcan/accountclient/core/LoginResult;Lcom/nd/smartcan/accountclient/thirdLogin/userInterface/IThirdPlatformLoginInfo;Lcom/nd/smartcan/accountclient/thirdLogin/userInterface/IThirdLoginParam;)V

  113.     .line 788
  114.     return-object v5

  115.     .line 754
  116.     .end local v0    # "body":Ljava/lang/String;
  117.     .end local v5    # "result":Lcom/nd/smartcan/accountclient/core/LoginResult;
  118.     :cond_6
  119.     const-string v9, "{"login_name":"%s","password":"%s","org_name":"%s"}"

  120.     const/4 v10, 0x3

  121.     new-array v10, v10, [Ljava/lang/Object;

  122.     const/4 v11, 0x0

  123.     aput-object p1, v10, v11

  124.     const/4 v11, 0x1

  125.     .line 755
  126.     invoke-virtual {p0}, Lcom/nd/smartcan/accountclient/UCManager;->getUCManagerProxy()Lcom/nd/smartcan/accountclient/proxy/UCManagerProxy;

  127.     move-result-object v12

  128.     invoke-interface {v12, p2}, Lcom/nd/smartcan/accountclient/proxy/UCManagerProxy;->encrypt(Ljava/lang/String;)Ljava/lang/String;

  129.     move-result-object v12

  130.     aput-object v12, v10, v11

  131.     const/4 v11, 0x2

  132.     aput-object p4, v10, v11

  133.     .line 754
  134.     invoke-static {v9, v10}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

  135.     move-result-object v0

  136.     .restart local v0    # "body":Ljava/lang/String;
  137.     goto :goto_0

  138.     .line 781
  139.     :catch_0
  140.     move-exception v3

  141.     .line 782
  142.     .local v3, "e":Lcom/nd/smartcan/core/restful/ResourceException;
  143.     invoke-virtual {v2}, Lcom/nd/smartcan/core/restful/ClientResource;->getTraceId()Ljava/lang/String;

  144.     move-result-object v9

  145.     invoke-static {v9, v3}, Lcom/nd/smartcan/accountclient/utils/UcExceptionReporterHelper;->reportException(Ljava/lang/String;Lcom/nd/smartcan/core/restful/ResourceException;)Z

  146.     .line 783
  147.     const-string v9, "UCManager"

  148.     new-instance v10, Ljava/lang/StringBuilder;

  149.     invoke-direct {v10}, Ljava/lang/StringBuilder;-><init>()V

  150.     const-string v11, "login:"

  151.     invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

  152.     move-result-object v10

  153.     invoke-virtual {v3}, Lcom/nd/smartcan/core/restful/ResourceException;->getMessage()Ljava/lang/String;

  154.     move-result-object v11

  155.     invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

  156.     move-result-object v10

  157.     invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

  158.     move-result-object v10

  159.     invoke-static {v9, v10}, Lcom/nd/smartcan/commons/util/logger/Logger;->w(Ljava/lang/String;Ljava/lang/String;)V

  160.     .line 784
  161.     new-instance v5, Lcom/nd/smartcan/accountclient/core/LoginResult;

  162.     invoke-direct {v5}, Lcom/nd/smartcan/accountclient/core/LoginResult;-><init>()V

  163.     .line 785
  164.     .restart local v5    # "result":Lcom/nd/smartcan/accountclient/core/LoginResult;
  165.     invoke-static {v3}, Lcom/nd/smartcan/accountclient/UCManager;->toAccountException(Lcom/nd/smartcan/core/restful/ResourceException;)Lcom/nd/smartcan/accountclient/core/AccountException;

  166.     move-result-object v9

  167.     invoke-virtual {v5, v9}, Lcom/nd/smartcan/accountclient/core/LoginResult;->setException(Lcom/nd/smartcan/accountclient/core/AccountException;)V

  168.     goto :goto_1
  169. .end method
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表