Android端接入

SDK集成步骤

  • 导入SDK
    • 将NetSecKit-x.x.x.aar包拷贝到工程里的libs目录下。
    • 在build.gradle配置文件中添加如下配置:
repositories {
    flatDir {
  dirs 'libs'
}
}
dependencies {
  compile(name:'NetSecKit-x.x.x', ext:'aar')
}

其中x.x.x表示版本号。

  • 导入需要的ABI

SDK提供了armeabi, armeabi-v7a,x86,x86_64,arm64-v8a五种ABI的支持,默认会导出这五种ABI。

如果产品本身不支持这么多ABI,就需要对最终导出的ABI进行限制,不然在原产品不支持ABI的手机上会CRASH。

如果APP只需要支持特定的ABI,比如armeabi, armeabi-v7a, x86三种,可以在build.gradle添加如下配置:

defaultConfig {
    applicationId "com.XX.XXX"
    minSdkVersion XX
    targetSdkVersion XX
    versionCode XX
    versionName "X.X.X"
    ndk {
	abiFilters "armeabi", "armeabi-v7a", "x86"
    }
}
  • 添加权限信息

在AndroidMenifest.xml文件中添加下列权限配置:

<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  • 添加ProGuard配置

如果使用了proguard进行混淆,需要将安全SDK使用的类排除掉。

如果是使用Android Studio里默认的 proguard-rules.pro,则在里面添加:

-keep class  com.netease.NetSecKit.**{*;}	

SDK接口说明

安全存储功能

  • 添加头文件
import com.netease.NetSecKit.interfacejni.SecurityStore;
  • 单例
Public SecurityStore(Context context)

功能描述:初始化SecurityStore类实例。

参数说明:

参数名称参数类型参数说明
contextContext任意Activity、Service等Coxtext类非空实例

返回值:无。

  • 存储string
public int putString(String index,String inputData) 

功能描述:客户端对输入的明文数据进行加密存储,其中index为该数据的索引值,具有唯一性。

参数说明:

参数名称参数类型参数说明
indexString字符串数据对应的索引值
inputDataString需要加密存储的字符串数据

返回值:成功,返回0;出错,详情请参考 [安全存储返回值说明]。

  • 获取存储的string
public String getString (String index)

功能描述:返回index对应的原始数据。

参数说明:

参数名称参数类型参数说明
indexString原始数据对应的索引值index

返回值:解密的结果,若出错,则返回“”。

  • 更新已存储的string
public int updateString (String index,String inputData)

功能描述:将已存储的index对应的数据,更新为inputData。

参数说明:

参数名称参数类型参数说明
indexString字符串数据对应的索引值
inputDataString需要加密存储的字符串数据

返回值:成功,返回0;出错,详情请参考 [安全存储返回值说明]。

  • 删除已存储的string
public int removeString (String index)

功能描述:将index对应的数据删除。

参数说明:

参数名称参数类型参数说明
indexString字符串数据对应的索引值

返回值:成功,返回0;出错,详情请参考 [安全存储返回值说明]。

  • 存储buffer
public int putByteArray(String index,byte[] inputData) 

功能描述:客户端对输入的明文数据进行加密存储,其中index为该数据的索引值,具有唯一性。

参数说明:

参数名称参数类型参数说明
indexString字符串数据对应的索引值
inputDatabyte[]需要加密存储的byte数组数据

返回值:成功,返回0;出错,详情请参考 [安全存储返回值说明]。

  • 获取存储的buffer
public byte[] getByteArray (String index)

功能描述: 返回index对应的原始数据。

参数说明:

参数名称参数类型参数说明
indexString原始数据对应的索引值index

返回值:解密的结果,若出错,则返回的数组为空。

  • 更新已存储的buffer
public int updateByteArray (String index,byte[] inputData)

功能描述: 将已存储的index对应的数据,更新为inputData。

参数说明:

参数名称参数类型参数说明
indexString字符串数据对应的索引值
inputDatabyte[]需要加密存储的byte数组数据

返回值:成功,返回0;出错,详情请参考 [安全存储返回值说明]。

  • 删除已存储的buffer
public int removeByteArray (String index)

功能描述:将index对应的数据删除。

参数说明:

参数名称参数类型参数说明
indexStringbyte数组数据对应的索引值

返回值:成功,返回0;出错,详情请参考 [安全存储返回值说明]。

  • 安全存储返回值说明

返回值说明
-1单例初始化失败
0操作成功
1索引值错误
2文件操作失败
3输入的数据为空
4图片校验失败
5试用过期
Online Chat Tel:95163223