暗式深链接无法正常工作并且 onCreate 被调用两次的问题可能是由于设置了错误的 intent-filter 或者在活动的清单文件中重复定义了活动。下面是一些可能的解决方法:
检查清单文件:确保您的活动只在清单文件中定义了一次。如果您在清单文件中重复定义了同一个活动,系统可能会调用两次 onCreate 方法。
检查 intent-filter:确保您正确设置了 intent-filter,并且指定了正确的 action 和 data。请注意,如果您设置了多个 intent-filter,系统可能会调用多次 onCreate 方法。确保只设置一个 intent-filter。
下面是一个正确设置 intent-filter 的示例代码:
在这个示例中,我们定义了一个 intent-filter,该 intent-filter 可以处理 http 和 https 协议下的 example.com 域名下的 /deep-link 路径。
Uri deepLinkUri = Uri.parse("http://example.com/deep-link");
Intent intent = new Intent(Intent.ACTION_VIEW, deepLinkUri);
startActivity(intent);
请注意,您需要将 "http://example.com/deep-link" 替换为您要调用的实际深链接。
通过检查上述问题并采取相应的解决方法,您应该能够解决暗式深链接无法正常工作并且 onCreate 被调用两次的问题。