首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当应用程序在应用商店上发送时。“[NSString字符串格式:@”%s|%d|“,__FUNCTION__,__LINE__],”可以吗?

当应用程序在应用商店上发送时,"[NSString字符串格式:@”%s|%d|“,FUNCTIONLINE]"是不可行的。

这段代码看起来是使用了Objective-C语言的字符串格式化功能,其中包含了%s、%d等格式化符号,以及FUNCTIONLINE这两个宏定义。这段代码的目的可能是为了在日志中输出当前函数名和行号。

然而,在应用商店上发布应用程序时,通常会经过严格的审核和安全检查。这段代码可能会被认为是潜在的安全风险,因为它可能会泄露应用程序的敏感信息,如函数名和行号。此外,这段代码也没有实际的功能,只是用于调试和日志记录。

因此,在应用商店上发送应用程序时,建议移除这段代码或将其替换为更安全和实用的日志记录方式。可以使用现代的日志框架或自定义的日志记录方法来实现类似的功能,同时确保不会泄露敏感信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 别再乱打日志了,这份 Java 日志规范,应有尽有,建议收藏!!

    实际的应用中出现G的日志文件也往往不少见,要在这样规模的日志文件中找出对解决问题有用的信息也是一大挑战。 1.2.4 日志的时效性 有的时候我们并不能及时的发现问题。需要追溯之前的日志。...hlog_format(HLOG_LEVEL_FATAL, "PluginDriver",   "[%s(%d)] "fmt, __FUNCTION__,   __LINE__, ##__VA_ARGS...hlog_format(HLOG_LEVEL_ERROR, "PluginDriver",   "[%s(%d)] "fmt, __FUNCTION__,   __LINE__, ##__VA_ARGS...2.2.2 DEBUG 一般用于细粒度级别上,对调试应用程序非常有帮助,主要用于开发过程中打印一些运行信息。 2.2.3 INFO INFO消息粗粒度级别上突出强调应用程序的运行过程。...DRV_LOG_ERROR("- [HPR.errorcode=0x%08x]Create thread failed", HPR_GetLastError()); 上述代码中[0x%08x]有下述作用: 该语句出现于格式化输出格式字符串

    31420

    别再乱打日志了,这份 Java 日志规范,应有尽有,建议收藏!

    实际的应用中出现G的日志文件也往往不少见,要在这样规模的日志文件中找出对解决问题有用的信息也是一大挑战。 1.2.4 日志的时效性 有的时候我们并不能及时的发现问题。需要追溯之前的日志。...hlog_format(HLOG_LEVEL_FATAL, "PluginDriver", "[%s(%d)] "fmt, __FUNCTION__, __LINE__, ##__VA_ARGS...hlog_format(HLOG_LEVEL_ERROR, "PluginDriver", "[%s(%d)] "fmt, __FUNCTION__, __LINE__, ##__VA_ARGS...2.2.2 DEBUG 一般用于细粒度级别上,对调试应用程序非常有帮助,主要用于开发过程中打印一些运行信息。 2.2.3 INFO INFO消息粗粒度级别上突出强调应用程序的运行过程。...DRV_LOG_ERROR("- [HPR.errorcode=0x%08x]Create thread failed", HPR_GetLastError()); 上述代码中[0x%08x]有下述作用: 该语句出现于格式化输出格式字符串

    22420

    这份Java日志格式规范,拿走不谢!

    实际的应用中出现 G 的日志文件也往往不少见,要在这样规模的日志文件中找出对解决问题有用的信息也是一大挑战。 日志的时效性:有的时候我们并不能及时的发现问题。需要追溯之前的日志。...hlog_format(HLOG_LEVEL_FATAL, "PluginDriver", "[%s(%d)] "fmt, __FUNCTION__, __LINE__, ##__VA_ARGS...hlog_format(HLOG_LEVEL_ERROR, "PluginDriver", "[%s(%d)] "fmt, __FUNCTION__, __LINE__, ##__VA_ARGS...DEBUG:一般用于细粒度级别上,对调试应用程序非常有帮助,主要用于开发过程中打印一些运行信息。 INFO:INFO 消息粗粒度级别上突出强调应用程序的运行过程。...DRV_LOG_ERROR("- [HPR.errorcode=0x%08x]Create thread failed", HPR_GetLastError()); 上述代码中 [0x%08x] 有下述作用: 该语句出现于格式化输出格式字符串

    34010

    别再乱打日志了,这份 Java 日志规范,应有尽有,建议收藏!

    实际的应用中出现G的日志文件也往往不少见,要在这样规模的日志文件中找出对解决问题有用的信息也是一大挑战。 1.2.4 日志的时效性 有的时候我们并不能及时的发现问题。需要追溯之前的日志。...hlog_format(HLOG_LEVEL_FATAL, "PluginDriver", "[%s(%d)] "fmt, __FUNCTION__, __LINE__, ##__VA_ARGS...hlog_format(HLOG_LEVEL_ERROR, "PluginDriver", "[%s(%d)] "fmt, __FUNCTION__, __LINE__, ##__VA_ARGS...2.2.2 DEBUG 一般用于细粒度级别上,对调试应用程序非常有帮助,主要用于开发过程中打印一些运行信息。 2.2.3 INFO INFO消息粗粒度级别上突出强调应用程序的运行过程。...DRV_LOG_ERROR("- [HPR.errorcode=0x%08x]Create thread failed", HPR_GetLastError()); 上述代码中[0x%08x]有下述作用: 该语句出现于格式化输出格式字符串

    39200

    C:_debug_printf,基于vsnprintf 或 vprintf实现带时间戳和源码信息(__FILE__,__FUNCTION__, __LINE__)的格式化打印输出

    写C程序的时候,printf输出调试信息是常态,printf输出调试信息如果能自动带源码信息(__FILE__,__FUNCTION__, __LINE__),显然更方便查找问题,如果能再加上时间戳就更完美了...如果到处都用printf("%s:%s:%d, %s\n",__FILE__,__FUNCTION__, __LINE__,"hello")写起来也太麻烦了;而且有的时候还需要向内存缓冲区打印输出。...所以这种直接在代码写printf("%s:%s:%d, %s\n",__FILE__,__FUNCTION__, __LINE__,"hello")语句的方式实际开发中用起来是很麻烦的。...__ // @param int line 源码行号 ,__LINE__ // @param const char * fmt 格式字符串,参见 vsnprintf...FUNCTION__:__LINE__ */ snprintf(logfmt, fmtsz, "%s %s:%d %s\n", time_buf, fun, line, fmt); } va_list

    1.5K20

    UIP协议栈移植到u-boot详解「建议收藏」

    uip_input()返回,一个输出包同样放在全局缓冲区uip_buf 里,并把大小赋给uip_len。若uip_len 是0,则说明没有包要发送;否则调用底层系统的发包函数就会将包发送到网络。...一个时间里应用程序只能在连接中发送一块数据,所以不可以每个应用程序启用中调用uip_send()超过一次,只有一次调用的数据将会发出后才可以。...一个连接请求一个监听端口到达,uIP产生一个新的连接。若一个新连接产生,则应用程序被调用,测试函数uip_connected()为真。...假如一个应用程序下载数据到一个慢速设备,例如磁盘驱动器。磁盘驱动器的作业队列满应用程序不会准备从服务器接收更多的数据,直到队列排出空位。...函数uip_stop()可以用于维护流控制和停止远程主机发送数据。当应用程序准备好接收更多数据,可用函数uip_restart()告知远程终端再次发送数据。

    1.2K30

    Java日志格式规范

    实际的应用中出现 G 的日志文件也往往不少见,要在这样规模的日志文件中找出对解决问题有用的信息也是一大挑战。 **日志的时效性:**有的时候我们并不能及时的发现问题。需要追溯之前的日志。...hlog_format(HLOG_LEVEL_FATAL, "PluginDriver", "[%s(%d)] "fmt, __FUNCTION__, __LINE__, ##__VA_ARGS...hlog_format(HLOG_LEVEL_ERROR, "PluginDriver", "[%s(%d)] "fmt, __FUNCTION__, __LINE__, ##__VA_ARGS...hlog_format(HLOG_LEVEL_WARN, "PluginDriver", "[%s(%d)] "fmt, __FUNCTION__, __LINE__, ##__VA_ARGS_...**DEBUG:**一般用于细粒度级别上,对调试应用程序非常有帮助,主要用于开发过程中打印一些运行信息。 **INFO:**INFO 消息粗粒度级别上突出强调应用程序的运行过程。

    23710

    如何写好日志记录?

    实际的应用中出现G的日志文件也往往不少见,要在这样规模的日志文件中找出对解决问题有用的信息也是一大挑战。 1.2.4 日志的时效性 有的时候我们并不能及时的发现问题。需要追溯之前的日志。...hlog_format(HLOG_LEVEL_FATAL, "PluginDriver",   "[%s(%d)] "fmt, __FUNCTION__,   __LINE__, ##__VA_ARGS...hlog_format(HLOG_LEVEL_ERROR, "PluginDriver",   "[%s(%d)] "fmt, __FUNCTION__,   __LINE__, ##__VA_ARGS...2.2.2 DEBUG 一般用于细粒度级别上,对调试应用程序非常有帮助,主要用于开发过程中打印一些运行信息。 2.2.3 INFO INFO消息粗粒度级别上突出强调应用程序的运行过程。...DRV_LOG_ERROR("- [HPR.errorcode=0x%08x]Create thread failed", HPR_GetLastError()); 上述代码中[0x%08x]有下述作用: 该语句出现于格式化输出格式字符串

    49810

    这份Java日志格式规范,拿走不谢!

    实际的应用中出现G的日志文件也往往不少见,要在这样规模的日志文件中找出对解决问题有用的信息也是一大挑战。 1.2.4 日志的时效性 有的时候我们并不能及时的发现问题。需要追溯之前的日志。...hlog_format(HLOG_LEVEL_FATAL, "PluginDriver",   "[%s(%d)] "fmt, __FUNCTION__,   __LINE__, ##__VA_ARGS...hlog_format(HLOG_LEVEL_ERROR, "PluginDriver",   "[%s(%d)] "fmt, __FUNCTION__,   __LINE__, ##__VA_ARGS...2.2.2 DEBUG 一般用于细粒度级别上,对调试应用程序非常有帮助,主要用于开发过程中打印一些运行信息。 2.2.3 INFO INFO消息粗粒度级别上突出强调应用程序的运行过程。...DRV_LOG_ERROR("- [HPR.errorcode=0x%08x]Create thread failed", HPR_GetLastError()); 上述代码中[0x%08x]有下述作用: 该语句出现于格式化输出格式字符串

    1.1K20

    【Linux笔记】Linux驱动基础

    但是,嵌入式Linux中,驱动和应用的分层是特别明显的,最直观的感受就是驱动程序是一个.c文件里,应用程序是另一个.c文件。...当我们的应用在调用open、close、write、read等函数,为什么就能操控硬件设备。那是因为有驱动层支撑着与硬件相关的操作,应用程序调用打开、关闭、读、写等操作会触发相应的驱动层函数。...%s line %d\n", __FILE__, __FUNCTION__, __LINE__); return 0; } 打开函数的两个形参的类型要与struct file_operations...%s line %d\n", __FILE__, __FUNCTION__, __LINE__); err = copy_from_user(kernel_buf, buf, MIN(1024,...inode *node, struct file *file) { printk("%s %s line %d\n", __FILE__, __FUNCTION__, __LINE__);

    25.9K54

    鸿蒙之接收UDP消息

    UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。 Internet 的传输层有两个主要协议,互为补充。...无连接的是 UDP,它除了给应用程序发送数据包功能并允许它们在所需的层次架构自己的协议之外,几乎没有做什么特别的事情。面向连接的是 TCP,该协议几乎做了所有的事情。...UDP协议与TCP协议一样用于处理数据包,OSI模型中,两者都位于传输层,处于IP协议的一层。...UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,报文发送之后,是无法得知其是否安全完整到达的。UDP用来支持那些需要在计算机之间传输数据的网络应用。...("%s %d \r\n", __FILE__, __LINE__); ret = hi_wifi_sta_start(ifname, &len); if (ret !

    1.3K30

    【嵌入式】C语言程序调试和宏使用的技巧

    s\n", __FUNCTION__); printf("line: %d\n", __LINE__); return 0; } 2. # 字符串化操作符 gcc的编译系统中,可以使用..., expr); 由于#expr本质上市一个表示字符串的宏,因此程序中也可以不适用%s打印它的内容,而是可以将其直接与其它的字符串连接。...) \ printf("file:%s function: %s line: %d "fmt, \ __FILE__, __FUNCTION__, __LINE_...) \ printf("file:%s function: %s line: %d "fmt, \ __FILE__, __FUNCTION__, __LINE_...gprof工具的时候,对于一个函数进行gprof方式的剖析,实质的时间是指除去库函数调用和系统调用之外,纯碎应用部分开发的实际代码运行的时间,也就是说time一项描述的时间值不包括库函数printf、

    67010

    【c语法】##__VA_ARGS__与__VA_ARGS__

    用于接收任意数量的额外参数,比如: #define LOG_DEBUG(format,...) printf(format,__VA_ARGS__) 解析: DEBUG_LOG 是一个宏,接受至少一个参数 fmt(格式字符串...示例: #define LOG_(format,...) printf("[%s:%d]"format"\n",__FILE__,__LINE__,__VA_ARGS__); 如上的代码就是对日志定义的一个宏...("[%s:%d] " fmt "\n", __FILE__, __LINE__, ##__VA_ARGS__) ##__VA_ARGS__前面加上##的作用是:当可变参数的个数为0,这里的##可以把把前面多余的...想要在自定义的调试信息加上时间、行数等信息,应该怎么做呢?先把正确的用法写在前面: #include #define LOG3(fmt, ...)...printf(":"fmt"\r\n", __FILE__, __FUNCTION__, ##__VA_ARGS__) int main(int argc, char** argv) {

    9410

    PHP 中的魔术常量

    概述 PHP提供了9个魔术常数,您可以PHP应用程序代码中使用。它们是“神奇的”,因为它们是在编译定义的,不像常规常量(您可以自己定义)是在运行时定义的。...这意味着它们的值可以根据它们代码中的使用位置而更改。 FUNCTION __FUNCTION__魔术常量返回使用它的函数的名称。如果在函数或方法之外使用它,它将返回空字符串。...函数中使用__FUNCTION__ 假设你有一个名为myFunction的函数: function myFunction() { echo __FUNCTION__; } 调用上面的函数将输出...函数中使用__METHOD__ 如果你一个函数中调用__METHOD__,输出将与__FUNCTION__相同。所以它只会输出函数的名称。...这是我发现自己使用最多的魔法常数,特别是Laravel应用程序中。您使用字符串形式的类名,它特别有用。

    7410
    领券