精华内容
下载资源
问答
  • 传入参数错误请检查adzone_id是否属于appkey拥有者","request_id":"f7vemdro9dun"}} {"error_response":{"code":15,"msg":"Remote service error","sub_code":"isv.invalid-parameter-adzone","sub_msg":"传入...

    通过之前的取链文章,现在新增渠道时候报错

    传入参数错误,请检查adzone_id是否属于appkey拥有者","request_id":"f7vemdro9dun"}}
    
    {"error_response":{"code":15,"msg":"Remote service error","sub_code":"isv.invalid-parameter-adzone","sub_msg":"传入参数错误,请检查adzone_id是否属于appkey拥有者
    

    确实操作没问题,问了客服解决办法

    最后发现问题出在新增渠道的步骤流程上面
    下图为工单截图
    在这里插入图片描述

    展开全文
  • 大部分的方法和构造函数对传入参数值有一些限制,比如:常见的索引值必须是非负数,对象引用不能为空。 你应该使用清晰的文档来标注所有的这些限制,然后在方法体开始的地方强制他们检查。 应该在错误发生的时候...

    856be89b6b511cfed597eeb8c4b265b9.png

    作为程序员的你,代码中最多的就是各种方法了,你是如何对参数进行校验的呢?

    背景

    大部分的方法和构造函数对传入的参数值有一些限制,比如:常见的索引值必须是非负数,对象引用不能为空。

    你应该使用清晰的文档来标注所有的这些限制,然后在方法体开始的地方强制他们检查。

    应该在错误发生的时候尽快的检查出来,这是基本原则。

    如果你不这么做,当错误发生的时候,错误将不会被检测出来,这让定位错误的源头变得更困难。

    如果一个非法参数传递到一个方法中,在方法执行前进行了参数检查。它将会快速失败,并给出清晰的异常信息。

    如果方法没有检查参数,下面这些事情会发生。

    一句话总结:参数不校验会导致原子性失败

    推荐做法

    对公共和保护方法,使用java文档的@throws标签来标注参数值不合法将抛出的异常。

    常见的参数校验的异常类型如下:

    只要你已经已经在文档中标注了方法参数的限制和违反限制会抛出的异常,限制将是一个简单的事情,下面是一个典型的例子。

    /**
    *@param m 必须是正整数
    *@throws ArithmeticException 如果m<=0
    **/
    public BigInteger mod(BigInteger m){
        if(m<=0){
            throw new ArithmeticException("modulus <=0: "+ m);
        }
        //todo 其它代码
    }

    注意:

    文档注释并没有说, 如果m是空,mod将抛出NullPointException, 尽管这个方法确实会这样。调用m.signum()的时候这个异常被标注在类级别BigInteger的文档注释上,类级别的注释适用于所有的公共方法的参数,这是一个避免在每个方法单独的文档化标注NullPointException这种混乱的好方法。

    也许可以结合@Nullable或者类似的注解来指明特殊参数可以为空,但是这个实践并不是标准的,并且有很多注解可以用来达到这个目的。

    Objects实用类

    Objects.requireNonNull方法,在Java7中添加的,非常的灵活和方便,所以没有理由手动的执行空指针检查。 你也可以指定异常的详细信息,这个方法返回自己的输入,所以你可以在使用该值的时候执行一个空指针检查。

    //一行代码使用java的空指针检查
    this.strategy = Objects.requireNonNull(strategy,"strategy")

    如果你可以忽略返回值,你也可以根据你的需要使用Objects.requireNonNull作为独立的空指针检查。 在Java9中,一个范围检查的方法被添加到了java.util.Objects中,包含了3个方法:

    这3个方法没有空指针检查方法灵活,它无法让你指定自己的异常详细信息,它被设计用在List和Array的索引检查上。 它也无法处理闭区间,但是只要你需要,这就是一个小便利。

    Java断言

    对一个不开放的方法,你作为包的作者,控制着方法的调用状况,你必须保证只有合法的参数值传递进去了。所以,对非公开的方法,你可以使用断言来进行参数检查,如下所示:

    //私有帮助排序函数
    private static void sort(long a[] , int offset, int length){
        assert a != null ;
        //更多代码
    }

    本质上来讲,断言申明条件一定是true , 忽略客户端如何使用对应的包。 跟一般的合法性检查不同,断言失败的时候抛出AssertError; 跟一般的合法性检查不同,除非你启用他们否则断言对你没有任何影响和消耗。 在java命令行启用指令:

    -ea
    或者
    -enableassertions

    更多断言的信息,查看java手册的Asserts;

    检查参数的合法性非常重要,即使你的方法中没有用到,但是存储起来了,后面会用到。

    举个例子: 静态工厂方法: 输入一个 int数组 ,返回一个array的 list视图, 如果客户端传入 null, 这个方法会抛出NPE, 因为方法会有一个直接检查,调用了Objects.requireNonNull。 如果忽略检查,方法会返回一个引用新创建的List的实例;

    而客户端尝试使用的时候回抛出NPE; 这个时候,原始的List实例很难决定,很大可能会复杂到变成一个调试任务。

    构造函数代表了一个特殊例子的原则: 你应该检查即将存储稍后会用到的参数的合法性。

    检查构造函数参数的合法性非常重要,它可以防止构造一个违反类的不变性的对象。

    异常情况

    在执行方法计算之前,你应该检查方法参数 。 这个规则也有异常情况。

    一个重要的异常情况是:合法性检查代价非常高并且重要, 并且检查是在执行计算的过程中执行的。 举个例子:有一个方法对一个对象list排序,比如 Collectios.sort(list),所有的list中的对象必须是可互相比较的。在处理list比较的时候,每个对象将会跟其它的对象进行比较,

    如果对象不能互相比较,其中一个或多个比较会抛出ClassCastException,这是排序方法应该做的。

    所以:这里有一个小店,在开始的时候检查列表中的元素应该是可以互相比较的,注意:修改合法性检查会丧失原子失败

    偶尔,一个计算执行了一个需要的合法性检查,但是当执行检查失败的时候,抛出了一个错误的异常。换句话说,计算常常会抛出参数合法性检查的异常,并不会匹配方法在文档中申明的异常。这种场景下,你应该使用异常翻译成语。 转换自然异常为正确的异常。

    这个原则并不是说武断的限制参数是一件好事,而是说:你应该设计通用实际的方法。 假设你的方法接受所有的参数组合而可以做一些合理事情,你的参数限制越少越好,然而,一些限制本质上在抽象类中已经被实现了。

    小结

    如果看完之后你只能记住一句话:每次你写一个方法或者一个构造函数,你应该思考参数的限制是否存在,你应该把限制写在文档中,并在方法体的开始部分确保进行了检查

    养成这个习惯很重要,适当的工作会在第一次合法性检查失败的时候回馈你。

    d4ca3707aa8061541897dbca65a259a0.png

    我会持续分享Java软件编程知识和程序员发展职业之路! 原创不易,关注诚可贵,转发价更高!转载请注明出处,让我们互通有无,共同进步,欢迎沟通交流。

    展开全文
  • 在调用存储过程时,产生如下错误:Parameter p_R_URL: No size set for variable ...请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Exception: Parameter p_R_URL:

     在调用存储过程时,产生如下错误:

    Parameter 'p_R_URL': No size set for variable length data type: String.

    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

    异常详细信息: System.Exception: Parameter 'p_R_URL': No size set for variable length data type: String.

    源错误:

    行 67: 			catch(Exception ex)
    行 68: 			{
    行 70: 				//return false;
    行 71: 			}

    源文件: c:/inetpub/wwwroot/resource/datalay/dbresource.cs    行: 69

    堆栈跟踪:

    [Exception: Parameter 'p_R_URL': No size set for variable length data type: String.]
       ReSource.DataLay.DbResource.Insert(String R_TITLE, String R_USE, String R_XKML, String R_GRLB, String R_WJLB, DateTime R_ADDTIME, String R_URL, String R_PRIVATE, String R_COMMONT) in c:/inetpub/wwwroot/resource/datalay/dbresource.cs:69
       ReSource.BusLay.BusResource.Insert() in c:/inetpub/wwwroot/resource/buslay/busresource.cs:119
       ReSource.WebLay.MYRESOURCEAdd.Insert(Object sender, EventArgs e) in c:/inetpub/wwwroot/resource/weblay/tjzy/myresourceadd.aspx.cs:80
       System.EventHandler.Invoke(Object sender, EventArgs e) +0
       System.Web.UI.WebControls.LinkButton.OnClick(EventArgs e) +108
       System.Web.UI.WebControls.LinkButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +57
       System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18
       System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +138
       System.Web.UI.Page.ProcessRequestMain() +1292
    

    版本信息: Microsoft .NET Framework 版本:1.1.4322.2300; ASP.NET 版本:1.1.4322.2300

    很是郁闷,于是就打开Enterprise Library的源代码进行调试。发现问题原来出现在 OracleCommandWrapper.cs文件中的 如下函数:(从345 行开始)

    private OracleParameter CreateParameter(string name, DbType dbType, int size, ParameterDirection direction, bool nullable, byte precision, byte scale, string sourceColumn, DataRowVersion sourceVersion, object value)
            
    {
                OracleParameter param 
    = this.command.CreateParameter();
                param.ParameterName 
    = name;
                param.DbType 
    = dbType;
                param.Size 
    = size;
                param.Value 
    = (value == null? DBNull.Value : value;
                
    // modify parameter type and value for special cases
                switch (dbType)
                
    {
                        
    // for Guid, change to value to byte array
                    case DbType.Guid:
                        guidParameters.Add(param.ParameterName, 
    "System.Guid");
                        param.OracleType 
    = OracleType.Raw;
                        param.Size 
    = 16;
                        
    // convert Guid value to byte array only if not null
                        if ((value is DBNull) || (value == null))
                        
    {
                            param.Value 
    = Convert.DBNull;
                        }

                        
    else
                        
    {
                            param.Value 
    = ((Guid)value).ToByteArray();
                        }

                        
    break;
                        
    //                case DbType.AnsiString:
                        
    //                case DbType.AnsiStringFixedLength:
                        
    //                case DbType.String:
                        
    //                case DbType.StringFixedLength:                
                        
    //                    // for empty string, set it to DBNull
                        
    //                    if ((value == null) || (!(value is DBNull)) && ((string)value).Length == 0) 
                        
    //                    {
                        
    //                        param.Value = Convert.DBNull;
                        
    //                    }
                        
    //                    break;
                    default:
                        
    break;
                }

                param.Direction 
    = direction;
                param.IsNullable 
    = nullable;
                param.Precision 
    = precision;
                param.Scale 
    = scale;
                param.SourceColumn 
    = sourceColumn;
                param.SourceVersion 
    = sourceVersion;
                
    return param;
            }

     

    可以看到,代码中处理了传入值为 NULL的情况。但是不知道为什么把处理字符串参数等于 "" 的时候得语句给注释掉了。于是乎,就更改源代码,如下:

    private OracleParameter CreateParameter(string name, DbType dbType, int size, ParameterDirection direction, bool nullable, byte precision, byte scale, string sourceColumn, DataRowVersion sourceVersion, object value)
            
    {
                OracleParameter param 
    = this.command.CreateParameter();
                param.ParameterName 
    = name;
                param.DbType 
    = dbType;
                param.Size 
    = size;
                param.Value 
    = (value == null? DBNull.Value : value;
                
    // modify parameter type and value for special cases
                switch (dbType)
                
    {
                        
    // for Guid, change to value to byte array
                    case DbType.Guid:
                        guidParameters.Add(param.ParameterName, 
    "System.Guid");
                        param.OracleType 
    = OracleType.Raw;
                        param.Size 
    = 16;
                        
    // convert Guid value to byte array only if not null
                        if ((value is DBNull) || (value == null))
                        
    {
                            param.Value 
    = Convert.DBNull;
                        }

                        
    else
                        
    {
                            param.Value 
    = ((Guid)value).ToByteArray();
                        }

                        
    break;
                        
    case DbType.AnsiString:
                        
    case DbType.AnsiStringFixedLength:
                        
    case DbType.String:
                        
    case DbType.StringFixedLength:                
                            
    // for empty string, set it to DBNull
                            if ((value == null|| (!(value is DBNull)) && ((string)value).Length == 0
                            
    {
                                param.Value 
    = Convert.DBNull;
                            }

                            
    break;
                    
    default:
                        
    break;
                }

                param.Direction 
    = direction;
                param.IsNullable 
    = nullable;
                param.Precision 
    = precision;
                param.Scale 
    = scale;
                param.SourceColumn 
    = sourceColumn;
                param.SourceVersion 
    = sourceVersion;
                
    return param;
            }

    问题的到了解决。但是不知道微软的代码为什么把这个给注释掉了。

    后来,上网上看到Oracle 的一个论坛上的帖子上有如下的描述:


    Oracle will treat '' (empty string) as
    NULL, and store as NULL anyway - better be prepared for it, and
    treat it as such.


    版本信息: Microsoft .NET Framework 版本:1.1.4322.2300; ASP.NET 版本:1.1.4322.2300

    很是郁闷,于是就打开Enterprise Library的源代码进行调试。发现问题原来出现在 OracleCommandWrapper.cs文件中的 如下函数:(从345 行开始)

    private OracleParameter CreateParameter(string name, DbType dbType, int size, ParameterDirection direction, bool nullable, byte precision, byte scale, string sourceColumn, DataRowVersion sourceVersion, object value)
            
    {
                OracleParameter param 
    = this.command.CreateParameter();
                param.ParameterName 
    = name;
                param.DbType 
    = dbType;
                param.Size 
    = size;
                param.Value 
    = (value == null? DBNull.Value : value;
                
    // modify parameter type and value for special cases
                switch (dbType)
                
    {
                        
    // for Guid, change to value to byte array
                    case DbType.Guid:
                        guidParameters.Add(param.ParameterName, 
    "System.Guid");
                        param.OracleType 
    = OracleType.Raw;
                        param.Size 
    = 16;
                        
    // convert Guid value to byte array only if not null
                        if ((value is DBNull) || (value == null))
                        
    {
                            param.Value 
    = Convert.DBNull;
                        }

                        
    else
                        
    {
                            param.Value 
    = ((Guid)value).ToByteArray();
                        }

                        
    break;
                        
    //                case DbType.AnsiString:
                        
    //                case DbType.AnsiStringFixedLength:
                        
    //                case DbType.String:
                        
    //                case DbType.StringFixedLength:                
                        
    //                    // for empty string, set it to DBNull
                        
    //                    if ((value == null) || (!(value is DBNull)) && ((string)value).Length == 0) 
                        
    //                    {
                        
    //                        param.Value = Convert.DBNull;
                        
    //                    }
                        
    //                    break;
                    default:
                        
    break;
                }

                param.Direction 
    = direction;
                param.IsNullable 
    = nullable;
                param.Precision 
    = precision;
                param.Scale 
    = scale;
                param.SourceColumn 
    = sourceColumn;
                param.SourceVersion 
    = sourceVersion;
                
    return param;
            }

     

    可以看到,代码中处理了传入值为 NULL的情况。但是不知道为什么把处理字符串参数等于 "" 的时候得语句给注释掉了。于是乎,就更改源代码,如下:

    private OracleParameter CreateParameter(string name, DbType dbType, int size, ParameterDirection direction, bool nullable, byte precision, byte scale, string sourceColumn, DataRowVersion sourceVersion, object value)
            
    {
                OracleParameter param 
    = this.command.CreateParameter();
                param.ParameterName 
    = name;
                param.DbType 
    = dbType;
                param.Size 
    = size;
                param.Value 
    = (value == null? DBNull.Value : value;
                
    // modify parameter type and value for special cases
                switch (dbType)
                
    {
                        
    // for Guid, change to value to byte array
                    case DbType.Guid:
                        guidParameters.Add(param.ParameterName, 
    "System.Guid");
                        param.OracleType 
    = OracleType.Raw;
                        param.Size 
    = 16;
                        
    // convert Guid value to byte array only if not null
                        if ((value is DBNull) || (value == null))
                        
    {
                            param.Value 
    = Convert.DBNull;
                        }

                        
    else
                        
    {
                            param.Value 
    = ((Guid)value).ToByteArray();
                        }

                        
    break;
                        
    case DbType.AnsiString:
                        
    case DbType.AnsiStringFixedLength:
                        
    case DbType.String:
                        
    case DbType.StringFixedLength:                
                            
    // for empty string, set it to DBNull
                            if ((value == null|| (!(value is DBNull)) && ((string)value).Length == 0
                            
    {
                                param.Value 
    = Convert.DBNull;
                            }

                            
    break;
                    
    default:
                        
    break;
                }

                param.Direction 
    = direction;
                param.IsNullable 
    = nullable;
                param.Precision 
    = precision;
                param.Scale 
    = scale;
                param.SourceColumn 
    = sourceColumn;
                param.SourceVersion 
    = sourceVersion;
                
    return param;
            }

    问题的到了解决。但是不知道微软的代码为什么把这个给注释掉了。

    后来,上网上看到Oracle 的一个论坛上的帖子上有如下的描述:


    Oracle will treat '' (empty string) as
    NULL, and store as NULL anyway - better be prepared for it, and
    treat it as such.

    展开全文
  • 若开发者在调用addcard接口遇到签名错误时,按照以下步骤排查错误: Step1.检验签名算法是否正确,开发者可以使用Chrome打开卡券签名调试工具,开发者也可以参考JS-SDK Demo中卡券的签名写法, 参见:示例代码和...

    若开发者在调用addcard接口遇到签名错误时,请按照以下步骤排查错误: 

    Step1. 检验签名算法是否正确,开发者可以使用Chrome打开卡券签名调试工具,开发者也可以参考JS-SDK Demo中卡券的签名写法,

    参见:示例代码和JS-SDK Demo

     

    Step2.检查CardExt内的参数是否正确

       -检查是否存在自定义code码的card_id没有在cardext内传入code参数,或者非自定义code模式的卡券传入了code参数,这两种情况都可能导致参数错误或者签名错误;

      -检查是否存在bind_openid为true的card_id没有在cardext内传入openid参数,或者bind_openid为false的card_id的卡券传入了openid参数,这两种情况都可能导致参数错误或者签名错误;

      -检查是否在cardext内传入了A、B、C、D四个参数,但是签名时却使用了A、B、C三个参数或者使用了A、B、C、D、E五个参数,这种情况一定会出现签名错误;

     

    Step3.检查ticket是否正确/有效  

       -检查获取当前ticekt的appid是否为创建card_id的appid;

       -检查获取当前ticket的接口是否正确,确认获取的ticket的type类型是type=wx_card;

       -检查ticket是否过期/无效;

     

    Addcard接口常见错误以及原因: 

    领取页面提示 错误原因 修改方法

    已领完(addcard)

    当前卡券无库存 调用增加库存接口增加库存
    addcard接口内cardext参数
    内nonce_Str和timestamp值重复
    保证不同的请求中cardext参数内
    nonce_Str和timestamp值重复
    自定义code不能实时下发 js拉起领取页面时code无法实时下发

    参数错误(addcard)

    cardext参数与card_id属性不对其 开发者须先查询card_id详情,重点关注是否使用
    自定义code、是否绑定openid、是否是导入code模式
    自定义code的卡券在cardext须填入code字段,参与签名;
    绑定openid的卡券须传入openid字段
    code超长或格式错误 检查code参数是否超过20位或含特殊字符

    签名错误(addcard)

    签名算法错误 使用http://mp.weixin.qq.com/debug
    /cgi-bin/sandbox?t=cardsign工具校验签名算法
    ticket错误 确认使用的ticket是卡券api_ticket而不是jsapi_ticket
    且在有效期内
    cardext内参数与参与签名参数不对齐 cardext内若填入了需要参与签名的参数,须在签
    名算法中也将字段计入签名
    cardext参数格式错误 cardext本身是一个字符串不是object对象,若格式
    错误iOS系统会提示签名错误

    拉取卡券列表为空
    (choosecard)

    签名错误 拉起卡券列表传入的signature字段有误,或者参与签名的
    参数与接口传入的参数不对齐
    筛选条件错误 筛选条件中传入了shopid或者card_type,但是实际没有对应
    门店或者卡类型的卡券

    请仔细阅读

    官方文档:https://mp.weixin.qq.com/s/WhYpWmfuhUBw2wseTXdt2A

    转载于:https://www.cnblogs.com/wodemingtian/p/8993483.html

    展开全文
  • 多步 OLE DB 操作产生错误

    千次阅读 2014-07-28 15:18:09
    一个之前运行很正常的测试程序,突然在通过 Oracle 数据库获取数据时提示了这种错误:“多步 OLE DB 操作产生错误,如果可能,请检查每个 OLE DB 状态值” 2 网上搜索的解决办法  1. 传入参数不符合数据库...
  • 如果看到如下错误而又找不到原因的话: - ORA-00932: 数据类型不一致: 应为 NUMBER, 但却获得 BINARY 请检查是否传入参数中有空值(null).
  • 调用config 接口的时候传入参数 debug: true 可以开启debug模式,页面会alert出错误信息。以下为常见错误及解决方法: 1、 invalid url domain当前页面所在域名与使用的appid没有绑定,确认正确填写绑定的域名,...
  • 会报TypeError的错误,并且Python会明确提示参数错误原因。 hex()内置函数会把一个整数转换成十六进制表示的字符串。 ’定义一个函数要使用def语句。依次写出函数名,括号,括号中的参数和冒号:” 调用函数时...
  • app返回码说明

    千次阅读 2017-03-03 14:42:16
    返回码 说明 公共码 10001 系统错误 10002 请求成功 10003 输入参数规则错误 ...无效的数据ID,请检查传入参数 10006
  • 重要的事情写在开头:回头仔细检查自己的代码中,item( row, col ).text() 这个括号内的row,col,是否真的存在这个行列数,table widget这个表格控件是从(0,0)开始的,也就是**存在"第0行第0列"**的 我是想采用...
  • 根据【QQ登录】API文档中的接口输入参数说明来检查调用这个接口时传入参数名及参数值是否正确。1001该OpenAPI服务繁忙1002没有登录态1003账户被冻结(注:支付类OpenAPI提供了3级错误码,有一部分错误码的开头是...
  • 这个错误是由于我们请求微信接口时候,传入参数有误,请检查下url和参数是否都规范正确。
  • 注意,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将...当传入了不恰当的参数时,内置函数abs会检查参数错误,而我们定义的my_abs没有参数检查,会导致if语句出错,出错信息和abs不一...
  • -- 过滤sql注入,对传入参数过滤特殊字符等 --> <filter-name>XssFilter <filter-class>com.rongyi.common.XssFilter</filter-class> <filter-name>XssFilter <url-pattern>/* <!-- 检查...
  • errcode":41002,这个错误是由于我们请求微信接口时候,传入参数有误,请检查下url和参数是否都规范正确 解决方案: 微信接口没有收到正确的appid,所以,你需要检测下url! //https://api.weixin.qq.com...
  • 今天前端同事突然告诉我swagger不能使了,在我更新系统前可以正常使用。 擦,那得赶紧想办法修理啊。看提示信息一开始我怀疑是swagger版本的问题,但是也不...仔细检查了一番,前两点确定没有问题,那就只剩传入参数
  • 调用config 接口的时候传入参数 debug: true 可以开启debug模式,页面会alert出错误信息。以下为常见错误及解决方法: 1.invalid url domain当前页面所在域名与使用的appid没有绑定,确认正确填写绑定的域名,仅...
  • 支付宝回调验证签名失败的解决方法:1、确保使用的验证签名是正确的;2、确保传入参数是正确的;...签名验证错误检查顺序(这里是基于使用官方给的demo,自己封装的绕道):1:检查一下你使用的验证签名...
  • 以下是 options 的所有可选参数及描述,使用详情参考在线文档: declare interface DrawOption { el?: string | HTMLElement; // 绘制的容器,支持选择器或dom,若是不填,会在body后append一个dom作为容器 type...
  • 尝试配置连接参数Method 为post, ContentType为application/json,并检查输入参数格式是否匹配再试!"; return rb; } } ``` 我向里接口传入:{Appkey":"ppppp","Sno":"6CBEC166","Clist":["aaaaa","bbbbb",...
  • Toast.makeText(EX05_03.this, "电话号码格式错误+短信内容超过70字,请检查!!", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(EX05_03.this, "电话号码格式错误,请检查!!" , Toast.LENGTH_SHORT)....

空空如也

空空如也

1 2 3 4
收藏数 73
精华内容 29
关键字:

参数错误请检查传入参数