实际项目中遇到的问题总结(1)

1、SHA1码的获取:

(添加第三方库创建应用的时候,有的需要添加,网上搜很多,记下来)

keytool -list -v -keystore debug.keystore  //调试

keytool -list -v -keystore [此处为自己生成签名的完整路径]  //正式

//代码获取
public static String sHA1(Context context) {
    try {
        PackageInfo info = context.getPackageManager().getPackageInfo(
                context.getPackageName(), PackageManager.GET_SIGNATURES);
        byte[] cert = info.signatures[0].toByteArray();
        MessageDigest md = MessageDigest.getInstance("SHA1");
        byte[] publicKey = md.digest(cert);
        StringBuffer hexString = new StringBuffer();
        for (int i = 0; i < publicKey.length; i++) {
            String appendString = Integer.toHexString(0xFF & publicKey[i])
                    .toUpperCase(Locale.US);
            if (appendString.length() == 1)
                hexString.append("0");
            hexString.append(appendString);
            hexString.append(":");
        }
        String result = hexString.toString();
        Log.d("xiaojingyu", result);
        return result.substring(0, result.length() - 1);
    } catch (PackageManager.NameNotFoundException e) {
        e.printStackTrace();
    } catch (NoSuchAlgorithmException e) {
        e.printStackTrace();
    }
    return null;
}

2、获取设备编号

1.public static String getDeviceId(Context context) {  
2.        String deviceId = null;  
3.        deviceId = ((TelephonyManager) context  
4.                .getSystemService(Context.TELEPHONY_SERVICE)).getDeviceId();  
5.        if (deviceId == null && Build.VERSION.SDK_INT > 9) {  
6.            deviceId = Secure.getString(context.getContentResolver(),  
7.                    Secure.ANDROID_ID);  
8.            if (deviceId == null) {  
9.                ConnectivityManager cm = (ConnectivityManager) context  
10.                        .getSystemService(Context.CONNECTIVITY_SERVICE);  
11.                NetworkInfo networkInfo = cm.getActiveNetworkInfo();  
12.                if (networkInfo != null  
13.                        && networkInfo.isAvailable()  
14.                        && networkInfo.getType() == ConnectivityManager.TYPE_WIFI) {  
15.                    WifiManager wm = (WifiManager) context  
16.                            .getSystemService(Context.WIFI_SERVICE);  
17.                    deviceId = wm.getConnectionInfo().getMacAddress();  
18.                } else {  
19.                    deviceId = UUID.randomUUID().toString();  
20.                }  
21.            }  
22.        }  
23.  
24.        if (deviceId != null && deviceId.length() < 28) {  
25.            int len = 28 - deviceId.length();  
26.            for (int i = 0; i < len; i++) {  
27.                deviceId = "0" + deviceId;  
28.            }  
29.        }  
30.  
31.        return deviceId;  
32.    }  

3、隐藏软键盘:

InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
//强制显示或者关闭系统键盘
    public void KeyBoard(final EditText txtSearchKey, final boolean status) {
        Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                InputMethodManager m = (InputMethodManager)
                        txtSearchKey.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
                if (status) {
                    m.showSoftInput(txtSearchKey, InputMethodManager.SHOW_FORCED);
                } else {
                    m.hideSoftInputFromWindow(txtSearchKey.getWindowToken(), 0);
                }
            }
        }, 300);
    }

4、

Fragment嵌套Fragment  + PullToRefreshListView 最好不要用LinerLayout  用FrameLayout

布局高度用match_parent 否则布局显示不正常

PullToRefreshScrollView+RecyclerView显示不全的问题:在RecyclerView父布局添加

android:descendantFocusability="blocksDescendants"

5、android-解决 Android N 上 报错:android.os.FileUriExposedException

http://www.cnblogs.com/yongdaimi/p/6067319.html

6、解决安卓7.0拍照,相册选择崩溃的问题(包括压缩图片在内)

http://blog.csdn.net/caohuicong/article/details/76154948


猜你喜欢

转载自blog.csdn.net/qq_25486413/article/details/79708454