Code Monkey home page Code Monkey logo

rapt-yandex-ads's Introduction

Yandex Mobile Ads в Ren'Py игре

Данный репозиторий содержит модифицированные файлы из папки rapt, которые позволят вам добавить рекламный баннер в игру сделанную на Ren'Py.

Установка

⚠️Минимальная поддерживаемая версия Ren'Py - 8.2.0

Подготовка rapt

Папка rapt находится в директории, где лежит исполняемый файл Ren'Py(renpy.exe). Найдите файл rapt/templates/app-build.gradle, откройте его в текстовом редакторе и проделайте в нём следующие изменения:

android {
    compileSdkVersion 33

    namespace "{{ config.package }}"

    defaultConfig {
+       multiDexEnabled true
        applicationId "{{ config.package }}"
dependencies {
+   implementation 'com.yandex.android:mobileads:6.4.0'
    implementation project(':renpyandroid')

⚠️Внимание: после обновления движка необходимо повторить эту процедуру

Использование

  1. Переместите файл yandex_ads.py в папку game вашего Ren'Py проекта
  2. Импортируйте модуль yandex_ads в ваш Ren'Py проект, используя следующий код:
# данный код можно прописать в любом файле вашего проекта(например, в script.rpy)

init python:
  if renpy.android:
    import yandex_ads

Создание баннера

init python:
  if renpy.android:
    banner = yandex_ads.create_banner()

    # первым делом необходимо установить размер баннера
    # помните - сделать это можно только один раз
    banner.set_sticky_size(-1)

    # по умолчанию баннер будет находиться "под игрой"
    # с помощью set_position можно изменить положение баннера в любое время
    banner.set_position('above_game') # при значении above_game, баннер будет находиться "над игрой"

    # ad_unit_id можно взять в партнёрском кабинете
    banner.set_ad_unit_id("R-M-XXXXXX-Y")

    # не забудьте загрузить объявление
    banner.load_ad()

Доступные значения для set_position()

  • bottom
  • top
  • center
  • left
  • right
  • center_horizontal
  • center_vertical
  • fill
  • fill_horizontal
  • fill_vertical
  • start
  • end
  • under_game
  • above_game

Подробнее о размере баннера

# адаптивный размер, где width ширина баннера(можно использовать -1, для того, чтобы растянуть баннер на всю доступную область)
banner.set_sticky_size(width)

# адаптивный размер, где width и height максимально возможные ширина и высота соответственно
banner.set_flexible_size(width, height)

# точный размер
banner.set_size(width, height)

Ширина и высота указывается в dp(density-independent pixels).

Ручная настройка

TODO

Решение проблем

Если у вас возникли проблемы, то создайте issue или свяжитесь со мной используя социальные сети.

Поддержать автора

Boosty

rapt-yandex-ads's People

Contributors

valery-iwanofu avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Forkers

andredron

rapt-yandex-ads's Issues

JavaException: Class not found b'com/yandex/mobile/ads/banner/BannerAdView'

Здравствуйте. Сделал все по инструкции, но мне выдают такую ошибку:

[code]
I'm sorry, but an uncaught exception occurred.

While running game code:
File "game/variable.rpy", line 48, in
JavaException: Class not found b'com/yandex/mobile/ads/banner/BannerAdView'

-- Full Traceback ------------------------------------------------------------

Full traceback:
File "variable.rpyc", line 46, in script
File "renpy/ast.py", line 1138, in execute
File "renpy/python.py", line 1122, in py_exec_bytecode
File "game/variable.rpy", line 48, in
File "", line 1007, in _find_and_load
File "", line 986, in _find_and_load_unlocked
File "", line 664, in _load_unlocked
File "", line 627, in load_backward_compatible
File "renpy/loader.py", line 1020, in load_module
File "yandex
ads.py", line 6, in
File "/home/tom/ab/renpy-build/tmp/py3/pyjnius/jnius/reflect.py", line 208, in autoclass
File "jnius_export_func.pxi", line 28, in jnius.jnius.find_javaclass
JavaException: Class not found b'com/yandex/mobile/ads/banner/BannerAdView'

[/code]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.