使用stipopsdk将贴纸集成到Android应用程序中

准备工作:

我们将开始为手机和平板电脑创建一个新项目。然后我们选择基本活动或空活动。确保选择Kotlin,并检查是否将最低SDK设置为API级别26以上的任何值,以便演示程序正常工作。

准备工作已经基本完成了。剩下的就是将存储库和依赖项添加到我们的构建中。
Jitpack存储库转到根构建的存储库部分的末尾。

allprojects {
  repositories {
    ...
    maven { url 'https://jitpack.io' }
  }
}

Stipop SDK依赖性将转到应用程序构建的依赖项部分的末尾。

dependencies {
  ...
  implementation 'com.github.stipop-development:stipop-android-sdk:0.0.6'
}

正式开始:

让我们从stipopsdk开始吧

我们在一开始下载的json文件将放在“assets”文件夹中,该文件夹位于app > src > main。如果由于某种原因,该文件夹找不到,您可以创建它并放置Stipop。里面有json文件。
下一步是创建一个GlobalApplication文件。为此,我们要App > src > main > [your package name] > GlobalApplication.kt:

import android.app.Application
import android.content.Context
import io.stipop.Stipop
class GlobalApplication : Application() {
    companion object {
        lateinit var instance: GlobalApplication
            private set
    }
    override fun onCreate() {
        super.onCreate()
        instance = this
        Stipop.configure(this)
    }
    fun context(): Context = applicationContext
}

现在是检查错误的好时机。让我们构建代码,如果一切正常,下一步就是修改AndroidManifest。xml文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="YOUR_PACKAGE"
    xmlns:tools="http://schemas.android.com/tools"
    >
    <application
        android:name=".GlobalApplication"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        tools:replace="android:theme">
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
        >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

以下是我们添加和更改的内容:

第3行:您的包名
第四行:xmlns:tools=“http://schemas.android.com/tools”
第8行:android:name=“.GlobalApplication”
第14行:tools:replace=“android:theme”
关于这个应用程序的所有基本细节都将描述。在我的例子中,除了我们刚刚更改的选项之外,大多数选项仍然是默认选项。

下一步是更新activity_main,文件应该位于app > src > main > res > layout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="bottom"
    android:orientation="vertical">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        >
        <TextView
            android:id="@+id/packageDetailTV"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="packageDetail!"
            android:layout_gravity="center"
            android:gravity="center"/>
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:orientation="horizontal"
        android:layout_margin="10dp"
        android:gravity="center_vertical">
        <EditText
            android:id="@+id/chatET"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="" />
        <io.stipop.extend.StipopImageView
            android:id="@+id/stipopIV"
            android:layout_width="24dp"
            android:layout_height="24dp"
            android:src="@mipmap/ic_sticker_normal"/>
    </LinearLayout>
</LinearLayout>

Activity_main包含有关UI外观的所有信息。

最后一步是返回MainActivity并激活Stipop.connect。您还可以通过更改国家/地区和语言代码来处理参数。您最后看到的贴纸将根据您选择的标准进行选择。

我们当前的代码显示“搜索视图”。这是一个标签库的搜索引擎。它的工作原理和其他搜索引擎一样:你输入一个关键字,然后得到这个关键字的所有标签。
你可以在这个视图和标签选取器之间进行选择,它看起来像是一个组织良好的贴纸库,在那里你可以下载你喜欢的。如果你想用“标签选取器”的观点,只需改变 Stipop.showSearch()到 Stipop.showKeyboard()。

注:你只能在一个应用中激活一个视图。

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import io.stipop.Stipop
import io.stipop.StipopDelegate
import io.stipop.extend.StipopImageView
import io.stipop.model.SPPackage
import io.stipop.model.SPSticker
class MainActivity : AppCompatActivity(), StipopDelegate {
  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    val stipopIV = findViewById<StipopImageView>(R.id.stipopIV)

    Stipop.connect(this, stipopIV, "1234", "en", "US", this)

    stipopIV.setOnClickListener {
      Stipop.showSearch()
    }
  }
  override fun onStickerSelected(sticker: SPSticker) {
    print(sticker)
  }
  override fun canDownload(spPackage: SPPackage): Boolean {
      print(spPackage)
      return true
  }
}

任务完成了!
剩下要做的就是重建这个项目。如果一切都做得正确,您将能够看到上面所示的SDK实现。从这里,您可以进一步构建,也可以在自己的应用程序中使用SDK。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值