Dongle烧写模块重构(八)--添加自测模块方便根据通信协议进行自测试

在Android native层的应用程序,当前已知的操作方式有如下:

1.通过终端输入参数来进行,这种方式适合与通过终端adb去操作,也可以通过脚本利用系统指令进行操作:

 ./android_peripheral_assist -r

2.将软件做成一个service,然后利用socket通信和上层APP或者其他C++应用程序通信,这种方式最好提供一个通信的接口


公司的大型软件除了通过接口来实现解耦和合作外,通常还通过定义协议来组织不同的软件模块,因此为了方便,上述两种方式都要支持,要能够提供自测模块便捷地对自身进行测试。

这里可以用到getopt这个命令:

详细见(搜索还是要用google(用不了的用http://www.jwss.com/,这个搜索引擎可以保留下来),百度搜不到这个,唉):

http://www.gnu.org/software/libc/manual/html_node/Getopt.html

这样的话,软件内部实现一个自测模块,就可以利用终端来进行调试了!(这里用moduleTest函数将命令传递给自测模块,其实就是将命令给到实际运行时的命令接受接口)

比如:

static int checkArgs(int argc, char * argv []) {
    int opt;
	int dongle_opt = TYPE_DONGLE_ERROR;
    while ((opt = getopt(argc, argv, "ihsutrc:")) != -1) {
        switch (opt) {
          
			case 'c':{
				printf("\ncheck the pro,c:'%s'\n",optarg);
				moduleTest(optarg);
				break;
			}
            default: {
                break;
            }
        }
    }
    return dongle_opt;
}

int main(int argc, char *argv[])
{
	char buffer[22];
	memset(buffer,0,sizeof(buffer));
	int __args = checkArgs(argc,argv);
	printf("__args=%d\n",__args);
	LOGE("pro AndroidPeripheralAssist start begin ...\n");

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值