我正在尝试使用webview在应用程序中显示Instagram帐户页面。请注意,由于某种原因,我不想在浏览器中重定向/打开它。另外,如果用户登录以关注该帐户,那么我想让他保持登录状态以备将来使用。因此,我使用了setAppCachePath和setDatabasePath。 Instagram主页的加载和登录工作正常,但是当我尝试打开帐户页面时,出现错误。请检查,
源代码:
web_view = findViewById(R.id.web_view_insta);
web_view.requestFocus();
web_view.getSettings().setJavaScriptEnabled(true);
web_view.getSettings().setAppCacheEnabled(true);
web_view.getSettings().setAllowContentAccess(true);
web_view.getSettings().setAllowFileAccess(true);
web_view.getSettings().setDomStorageEnabled(true);
web_view.getSettings().setAppCachePath(getApplicationContext().getFilesDir().getAbsolutePath() + "/cache");
web_view.getSettings().setDatabasePath(getApplicationContext().getFilesDir().getAbsolutePath() + "/databases");
web_view.loadUrl("https://www.instagram.com/_insta_account_id_/");
错误日志:
08-20 20:56:11.908 I/chromium: [INFO:CONSOLE(11)] "SyntaxError: Invalid flags supplied to RegExp constructor 'u'", source: https://www.instagram.com/static/bundles/metro/Vendor.js/5a56d51ae30f.js (11)
08-20 20:56:11.910 I/chromium: [INFO:CONSOLE(262)] "Uncaught (in promise) SyntaxError: Invalid flags supplied to RegExp constructor 'u'", source: https://www.instagram.com/static/bundles/metro/Consumer.js/941d0bc776e6.js (262)
我尝试过:
web_view.loadUrl("https://www.instagram.com/_u/_insta_account_id_/");
请提出建议。
答案 0 :(得分:0)
我通过添加用户代理-web_view.getSettings().setUserAgentString("Android");