Android 保存数组信息在本地

项目中有一个需求,从接口获取用户的权限信息。所有的权限信息是这样的:

"authorities": [
      "1003",
      "1002",
      "1001"
    ]

每个数字代表一个权限,有权限就返回相应的数字,没有权限就不返回。

如果是一个权限还好处理,在多个权限的时候就有点难了,后来搜到这篇文章

http://blog.csdn.net/u011494050/article/details/38851369

可以用json把数组转成字符串,再储存起来。

储存:

List<String> authorities = pms.authorities;//获得返回的json数组
JSONArray jsonArray = new JSONArray();
jsonArray.addAll(authorities);
SharedPreferences.Editor editor = prefs.edit();  
editor.putString(“authorities”,jsonArray.toString());  
editor.commit();

读取:

public static boolean hasAuthority(String authority) {
        SharedPreferences sp = getSharedPreferences(“authorities”, Context.MODE_PRIVATE).
        JSONArray jsonArray = JSON.parseArray(prefs.getString("authorities", "[]"));
        return jsonArray.contains(authority);
    }

使用时只需要执行hasAuthority方法,传入“1001” 就可以判断是否有1001的权限。

if (hasAuthority("1001")) {
    执行有权限的操作
    }

 

转载于:https://my.oschina.net/u/2524924/blog/704291

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值