我制作了一个使用aws cognito sdk登录到用户池的android应用。这将返回3个令牌(ID,访问权限,刷新),然后我可以调用我的api网关。这一切正常,没有问题。但是,当我调试该应用程序时,我看不到我的应用程序进行认知调用以获取这些令牌的调用。我尝试添加根据https://docs.aws.amazon.com/mobileanalytics/latest/ug/sdk-logging.html的详细日志记录,但这没有用。 https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-userpools-server-contract-reference.html文档中描述了5个端点,但似乎没有一个端点接受用户名/密码。
答案 0 :(得分:1)
SDK使用Apache Commons Logging库(JCL)(如果它存在于类路径中),否则它使用android.util.Log。 使用JCL: JCL是流行的日志记录API(例如Log4J,logback等)的包装。如果您的应用程序不依赖于其中任何一种,则通用日志记录库默认为存在java.util.logging包在JDK中。 JCL行为的配置最终取决于所使用的日志记录工具包(log4j,logback等)。请参考所选日志系统的文档以调整日志级别。如果默认使用java.util.logging软件包,则可以如下更改日志级别:
将logging.properties文件添加到res / raw,并将以下内容添加到MainActivity的onCreate
logger = Logger.getLogger(PubSubActivity.class.getName());
InputStream raw = getResources().openRawResource(R.raw.logging);
LogManager lManager = LogManager.getLogManager();
lManager.readConfiguration(raw);
使用Android日志:在这种情况下,无法更改整个SDK的日志级别。但是,作为更改日志级别以进行调试的解决方法,您可以使用以下命令针对特定标签进行更改:
adb shell setprop log.tag.<YOUR_LOG_TAG> <LEVEL>