Почему jre-8 добавляет лишнее пространство справа и внизу моего приложения JavaFX? [Дубликат]

Немного идей, на мой взгляд, только первый дает некоторую гарантию:

  1. Храните свои секреты на каком-то сервере в Интернете, а когда нужно, просто возьмите их и используйте. Если пользователь собирается использовать dropbox, ничто не мешает вам делать запрос на ваш сайт и получать секретный ключ.
  2. Поместите свои секреты в jni-код, добавьте некоторый переменный код, чтобы сделать ваши библиотеки большими и сложными декомпилировать. Вы также можете разделить ключевую строку на несколько частей и сохранить их в разных местах.
  3. использовать obfuscator, также помещать в код хэшированный секрет, а затем разжать его, когда нужно использовать.
  4. Поместите свой секретный ключ в качестве последних пикселей одного из ваших изображений в активах. Затем, когда это необходимо, прочитайте его в своем коде.

Если вы хотите быстро взглянуть на то, как легко читать код apk, а затем захватить APKAnalyser:

http://developer.sonymobile.com/knowledge-base/tool-guides/analyse-your-apks-with-apkanalyser/

19
задан Jens Piegsa 27 March 2014 в 14:55
поделиться

3 ответа

Как уже отмечалось, это различное поведение! / resizable пахнет как ошибка (кто-то может рассмотреть вопрос о проблеме ;-)

. Короче (чем размер вручную) путь - это явно подойти к сцене на сцену:

primaryStage.setScene(scene);
primaryStage.setResizable(false);
primaryStage.sizeToScene();

Просто заметили, что это работает для jdk8, но не для jdk7.

Для удобства, обновление ошибки: исходный отчет, отправленный jewelsea, был закрыт как дубликат (в новых координатах) https://bugs.openjdk.java.net/browse/JDK- 8089008 - все еще открыт, прокомментирован как победный.

41
ответ дан kleopatra 25 August 2018 в 16:46
поделиться

Хотя это не объяснение, оно решает проблему:

@Override
public void start(final Stage primaryStage) throws Exception {
    final Dimension d = new Dimension(210, 110);
    final Rectangle rectangle = new Rectangle(d.width, d.height, Color.POWDERBLUE);
    final BorderPane pane = new BorderPane(rectangle);
    pane.maxWidth(d.height);
    pane.maxWidth(d.width);
    final Scene scene = new Scene(pane, d.width, d.height);
    primaryStage.setScene(scene);
    primaryStage.setResizable(false);
    primaryStage.setWidth(d.width);
    primaryStage.setHeight(d.height);
    primaryStage.show();
}

Ключ задает ширину и высоту Stage в нужное время.

2
ответ дан Jens Piegsa 25 August 2018 в 16:46
поделиться

Попробуйте создать размер для размера, который вы хотите использовать frame- Dimension name = new Dimension(height,width), а затем установите размер размера в прямоугольник BorderPane и Scene. Вы хотите, чтобы все было одинакового размера?

0
ответ дан Mikhail_Bjornson 25 August 2018 в 16:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: