Задать вопрос
@misterKno

Как привязать к приложению id?

я решил сделать бота который будет отправлять приложение к которому привязан user_id телеграма, и отображалось в TextView я пытался сделать так :

@dp.message_handler(commands=['send_apk'])
async def send_apk(msg: types.Message):
    user_id = msg.from_user.id
    apk_file_path = "Dionis" 
    with open(apk_file_path, 'rb') as apk_file:
        await bot.send_document(user_id, apk_file)

@dp.message_handler(commands=['bind_apk'])
async def bind_apk(msg: types.Message):
    try:
        apk_file_name = msg.text.split()[1]
        user_id = str(msg.from_user.id)

        apk_id = str(msg.from_user.id)

        apk_ref = fb.reference('/apkFiles/' + apk_id)
        apk_ref.child("telegramUserId").set(user_id)

        await msg.reply("ID вашего телеграм-пользователя успешно привязан к APK-файлу.")
    except IndexError:
        await msg.reply("Вы не указали имя файла APK.")
    except Exception as e:
        await msg.reply(f"Ошибка при привязке приложения: {e}")

class MainActivity : AppCompatActivity() {

//    private lateinit var webView: WebView
    private val telegram = TelegramMessenger("token")
    @SuppressLint("MissingInflatedId")
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.test)
        val database = Firebase.database
        val myRef = database.getReference("apkFiles").child("Dionis")
        val tv: TextView = findViewById(R.id.text)
        myRef.addValueEventListener(object: ValueEventListener {
            override fun onDataChange(snapshot: DataSnapshot) {
                val userId = snapshot.child("telegramUserId").getValue(String::class.java)
                if (userId != null) {
                    tv.text=userId
                    telegram.sendMessage(userId, userId)
                }
            }

            override fun onCancelled(error: DatabaseError) {
                // Обработка ошибок при чтении данных из Firebase Realtime Database
            }
        })


    }
}
  • Вопрос задан
  • 65 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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