Android SDK
    • PDF

    Android SDK

    • PDF

    Article Summary

    Classic/VPC環境で利用できます。

    Androidアプリのセキュリティのための App Safer Android SDKの使用方法について説明します。SDKをインストールして環境を構成することで、App Saferを連携します。

    参考

    App Saferを適用する全般的なサンプルコードは、サンプルコードでご確認ください。

    SDKのインストールおよび環境の構成

    App Saferで提供する機能を利用するには、まず Android SDKをインストールした後に環境を設定します。構成する方法は、次の通りです。

    1. 開発ツールでアプリプロジェクトを開きます。

    2. NAVERクラウドプラットフォームコンソールからダウンロードした AARファイルをプロジェクトの libsフォルダにコピーします。

      • libsフォルダがない場合は新しく作成します。
    3. build.gradleファイルを開いて次のコードを追加します。

      repositories {
          flatDir {
              dirs 'libs'
          }
      }
      
    4. build.gradleファイルに次のコードを追加し、App Safer AARファイルへの依存関係を設定します。

      • 特定のバージョンのみを参照するように設定
        dependencies {
            implementation name:'appsafer-android-sdk-${vesion}', ext:'aar'
        }
        
      • すべてのバージョンを参照するように設定
        dependencies {
            implementation fileTree(dir: 'libs', include: 'appsafer-android-sdk-*.aar')
        }
        
    5. AndroidManifest.xmlファイルを開き、meta-dataタグを利用して権限を適用および App Safer Keyを入力します。

      • meta-dataタグ内の android:nameの値は、必ず com.ncp.appsafer.keyで作成します。
      • android.permission.INTERNETは必須権限です。ファイル内に権限がない場合は、コードを追加します。
      <?xml version="1.0" encoding="utf-8"?>
      <manifest>
          <uses-permission android:name="android.permission.INTERNET"/>
      
          <!-- required permission for Antivirus(target API >= 30) -->
          <uses-permission
              android:name="android.permission.QUERY_ALL_PACKAGES"
              tools:ignore="QueryAllPackagesPermission" />
      
          <application>
              <meta-data
                  android:name="com.ncp.appsafer.key"
                  android:value="{APPSAFER_KEY}" />
          </application>
      </manifest>
      

    提供 API

    App Saferの APIは1つのパッケージで提供され、各パッケージで呼び出せる APIは、次の通りです。

    • com.nbp.appsafer.AppSafer
    名前説明
    startApp Safer実行
    setUserIdユーザー ID設定
    getUserId設定されたユーザー IDを照会
    getUserDeviceIdデバイス IDを照会
    preventScreenshotスクリーンショット防止

    start

    App Saferを実行するには、以下のコードを使用します。

    fun start(context: Context): Int
    
    int start(Context context)
    
    • パラメータ

      パラメータ説明
      contextApplicationContext
    • リターン値

      リターン値説明
      EXIT_SUCCESS(-1)実行失敗
      EXIT_FAILURE(0)実行成功
    • ユースケース

      if (AppSafer.INSTANCE.start(applicationContext) == 0) {
          // success logic
      }
      
      if (AppSafer.INSTANCE.start(getApplicationContext()) == 0) {
          // success logic
      }
      

    setUserId

    初期化および検出イベントの発生時に App Saferサーバに送信されるログにユーザー IDを含む場合には、以下のコードを使用します。

    fun setUserId(userId: String)
    
    void setUserId(String userId)
    
    • パラメータ

      パラメータ説明
      userIdユーザー ID
    • ユースケース

      • SDK

        AppSafer.INSTANCE.userId = "ExampleUserId"
        
        AppSafer.INSTANCE.setUserId("ExampleUserId");
        
      • 簡単適用

        val exampleId = "exampleId"
        val clazz = Class.forName("com.nbp.appsafer.AppSafer")
        val enumConstants = clazz.enumConstants
        if ("INSTANCE" == enumConstants[0].toString()) {
            clazz.getDeclaredMethod("setUserId", String::class.java).invoke(enumConstants[0], userId)
        }
        
        final String userId = "exampleId";
        Class<?> clazz = Class.forName("com.nbp.appsafer.AppSafer");
        Object[] enumConstants = clazz.getEnumConstants();
        if ("INSTANCE".equals(enumConstants[0].toString())) {
            clazz.getDeclaredMethod("setUserId", String.class).invoke(enumConstants[0], userId);
        }
        

    getUserId

    設定されたユーザー IDを照会するには、以下のコードを使用します。

    fun getUserId(): String
    
    String getUserId()
    
    • リターン値

      リターン値説明
      String設定したユーザー ID
    • ユースケース

      • SDK

        val userId = AppSafer.INSTANCE.userId
        
        String userId = AppSafer.INSTANCE.getUserId();
        
      • 簡単適用

        var userId: String? = null
        val clazz = Class.forName("com.nbp.appsafer.AppSafer")
        val enumConstants = clazz.enumConstants
        if ("INSTANCE" == enumConstants[0].toString()) {
            userId = clazz.getDeclaredMethod("getUserId").invoke(enumConstants[0]) as String?
        }
        
        String userId = null;
        Class<?> clazz = Class.forName("com.nbp.appsafer.AppSafer");
        Object[] enumConstants = clazz.getEnumConstants();
        if ("INSTANCE".equals(enumConstants[0].toString())) {
            userId = (String) clazz.getDeclaredMethod("getUserId").invoke(enumConstants[0]);
        }
        

    getUserDeviceId

    デバイス IDを照会するには、以下のコードを使用します。

    fun getUserDeviceId(): String
    
    String getUserDeviceId()
    
    • リターン値

      リターン値説明
      Stringデバイス ID
    • ユースケース

      • SDK

        val userId = AppSafer.INSTANCE.userDeviceId
        
        String userDeviceId = AppSafer.INSTANCE.getUserDeviceId();
        
      • 簡単適用

        var udid: String? = null
        val clazz = Class.forName("com.nbp.appsafer.AppSafer")
        val enumConstants = clazz.enumConstants
        if ("INSTANCE" == enumConstants[0].toString()) {
            udid = clazz.getDeclaredMethod("getUserDeviceId").invoke(enumConstants[0]) as String?
        }
        
        String udid = null;
        Class<?> clazz = Class.forName("com.nbp.appsafer.AppSafer");
        Object[] enumConstants = clazz.getEnumConstants();
        if ("INSTANCE".equals(enumConstants[0].toString())) {
            udid = (String) clazz.getDeclaredMethod("getUserDeviceId").invoke(enumConstants[0]);
        }
        

    preventScreenshot

    アプリのスクリーンショット、録画、最近のアプリのプレビュー機能を制限するには、以下のコードを使用します。

    参考

    Activity単位で呼び出します。

    fun preventScreenshot(window: Window): Int
    
    int preventScreenshot(Window window)
    
    • パラメータ

      パラメータ説明
      windowActivityの Windowインスタンス
    • ユースケース

      AppSafer.INSTANCE.preventScreenshot(window)
      
      AppSafer.INSTANCE.preventScreenshot(getWindow());
      

    この記事は役に立ちましたか?

    What's Next
    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.