1. android 密码输入框  

EditText password;

password.setInputType(0x81);


2.在几个Acitivy 中使用Intent传送数据的安全性考虑


方式一:

  Intent intent = new Intent();

        intent.putExtra("username", name);

        intent.putExtra("password", password);

        intent.setAction("edu.com.SendIntent.LoginActivity");

        intent.addCategory(Intent.CATEGORY_DEFAULT);

        startActivity(intent);


安全问题:如果在一个hack app 中也定义了相同名称的action:

<activity

            android:name=".MainActivity"

            android:label="@string/title_activity_main" >

            <intent-filter>

                <action android:name="edu.com.SendIntent.LoginActivity" />

                <category android:name="android.intent.category.DEFAULT" />

            intent-filter>

    activity>


那么在intent-filter过滤时,这些信息也将被hack app拦截到。



两种方式可以防止这个情况发生:


方式一:

不使用setAction()隐式获取intent,而使用setClassName()根据包名和类名显式获取intent

                Intent intent = new Intent();

        intent.putExtra("username", name);

        intent.putExtra("password", password);

        intent.setClassName("edu.com.SendIntent""edu.com.SendIntent.LoginActivity");

        startActivity(intent);



方式二:

        Intent intent = new Intent(this,MainActivity.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
        Bundle bun = new Bundle();
 
        bun.putString("Username", useredit.getText().toString());
        bun.putString("Password", pswedit.getText().toString());
 
        intent.setClass(this, IntentReciever.class);
        intent.putExtras(bun);
        MainActivity.this.startActivity(intent);



更多相关文章

  1. Android(安卓)O上获取Adaptive Icon的Bitmap对象
  2. Android中的HTTP通信
  3. Android为数据存储提供几种方式
  4. Android学习——在线查看android源代码的3种方式
  5. Android实现授权访问网页的方法
  6. Android(安卓)Glide 4.0 以上设置出GlideApp
  7. Android(安卓)Service两种启动方式
  8. 多渠道打包gradle方式(解决类似'360'纯数字渠道名)
  9. android 打开微信扫一扫

随机推荐

  1. Android上成功实现了蓝牙的一些Profile
  2. 【Android】19.3 ContentProvider及安卓
  3. Android 自动化测试―robotium(一)环境
  4. 详解Android应用开发中Intent的作用及使
  5. Android 中文 API ——对话框 AlertDialo
  6. Android(安卓)服务两种启动方式的区别
  7. Android 中自定义View的应用 (自绘TextVi
  8. Android(安卓)、资源分目录存放
  9. ArcGIS for Android(安卓)Runtime100 基
  10. Android-x86-6.0定制之路 - 辛酸路开始