Я совершенно новичок в Java, но попытался создать действительно простое приложение, которое отображает веб-сайт внутри GeckoView.
Я мог заархивировать, чтобы загрузить веб-сайт внутри GeckoView, но как только я пытаюсь изменить некоторые Настройки (UserAgentMode на DESKTOP), приложение зависало, когда я пытался открыть его на телефоне (ошибки не отображаются). Как я уже сказал, я совершенно новичок в Java - так что это может быть ошибка новичка - во всяком случае, я не могу понять это самостоятельно.
Вот документация для UserAgentMode: https://mozilla.github.io/geckoview/javadoc/mozilla-central/org/mozilla/geckoview/GeckoSessionSettings.html#USER_AGENT_MODE_DESKTOP
Где я сейчас нахожусь:
package com.example.geckotest;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import org.mozilla.geckoview.GeckoRuntime;
import org.mozilla.geckoview.GeckoSession;
import org.mozilla.geckoview.GeckoSessionSettings;
import org.mozilla.geckoview.GeckoView;
public class MainActivity extends AppCompatActivity {
private GeckoView geckoview;
private GeckoSession GeckoSession;
private GeckoRuntime geckoRuntime;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
GeckoView view = findViewById(R.id.geckoview);
GeckoSession session = new GeckoSession();
GeckoSession.getSettings().setInt(GeckoSessionSettings.USER_AGENT_MODE, 1);
GeckoRuntime runtime = GeckoRuntime.create(this);
session.open(runtime);
view.setSession(session);
session.loadUri("https://google.com");
}
}
Эта строка вызывает проблему; когда я их комментирую, приложение запускается нормально, но не в желаемом режиме рабочего стола:
GeckoSession.getSettings().setInt(GeckoSessionSettings.USER_AGENT_MODE, 1);