change favicon with javascript

To change the favicon with JavaScript in Objective-C, you can use the following code:

NSString javascriptCode = @"var link = document.querySelector(\"link[rel='icon']\") || document.createElement('link'); link.type = 'image/x-icon'; link.rel = 'shortcut icon'; link.href = 'your_favicon_url'; document.getElementsByTagName('head')[0].appendChild(link);";
WKUserScript *userScript = [[WKUserScript alloc] initWithSource:javascriptCode injectionTime:WKUserScriptInjectionTimeAtDocumentEnd forMainFrameOnly:YES];
WKUserContentController *userContentController = [[WKUserContentController alloc] init];
[userContentController addUserScript:userScript];
WKWebViewConfiguration *configuration = [[WKWebViewConfiguration alloc] init];
configuration.userContentController = userContentController;
WKWebView *webView = [[WKWebView alloc] initWithFrame:self.view.bounds configuration:configuration];
[self.view addSubview:webView];

Replace 'your_favicon_url' with the URL of your desired favicon. This code creates a WKWebView and injects JavaScript code to change the favicon using the WKUserScript and WKUserContentController classes.

Please note that this code assumes you are using WKWebView for displaying web content in your Objective-C application. If you are using a different web view component or framework, the code may need to be adjusted accordingly.