zoukankan      html  css  js  c++  java
  • 王立平--scard0与scard1分别指的是什么?以及路径获取

    一般是:

    scard0:指系统内部存储

    scard1:指外插的sd卡

    也有特例。。

    分别获取路径的方法:

    package com.main;
    
    import java.lang.reflect.Method;
    
    import android.app.Activity;
    import android.content.Context;
    import android.os.Bundle;
    import android.os.storage.StorageManager;
    import android.util.Log;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.widget.TextView;
    
    public class MainActivity extends Activity {
    	TextView tv1;
    	TextView tv2;
    
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_main);
    		tv1 = (TextView) findViewById(R.id.tv1);
    		tv2 = (TextView) findViewById(R.id.tv2);
    		String str1 = getPrimaryStoragePath();
    		String str2 = getSecondaryStoragePath();
    		tv1.setText(str1);
    		tv2.setText(str2);
    
    	}
    
    	private static final String TAG = "PhoneStatusBarPolicy";
    
    	public String getPrimaryStoragePath() {
    		try {
    			StorageManager sm = (StorageManager) getSystemService(Context.STORAGE_SERVICE);
    			Method getVolumePathsMethod = StorageManager.class.getMethod(
    					"getVolumePaths", null);
    			String[] paths = (String[]) getVolumePathsMethod.invoke(sm, null);
    			// first element in paths[] is primary storage path
    			return paths[0];
    		} catch (Exception e) {
    			Log.e(TAG, "getPrimaryStoragePath() failed", e);
    		}
    		return null;
    	}
    
    	public String getSecondaryStoragePath() {
    		try {
    			StorageManager sm = (StorageManager) getSystemService(Context.STORAGE_SERVICE);
    			Method getVolumePathsMethod = StorageManager.class.getMethod(
    					"getVolumePaths", null);
    			String[] paths = (String[]) getVolumePathsMethod.invoke(sm, null);
    			// second element in paths[] is secondary storage path
    			return paths[1];
    		} catch (Exception e) {
    			Log.e(TAG, "getSecondaryStoragePath() failed", e);
    		}
    		return null;
    	}
    
    	public String getStorageState(String path) {
    		try {
    			StorageManager sm = (StorageManager) getSystemService(STORAGE_SERVICE);
    			Method getVolumeStateMethod = StorageManager.class.getMethod(
    					"getVolumeState", new Class[] { String.class });
    			String state = (String) getVolumeStateMethod.invoke(sm, path);
    			return state;
    		} catch (Exception e) {
    			Log.e(TAG, "getStorageState() failed", e);
    		}
    		return null;
    	}
    }
    
    红米手机的效果:
    效果:


  • 相关阅读:
    [不知道哪来的题] Subsequence
    [不知道哪来的题] 变量(variable)
    [不知道哪来的题] 串(string)
    LOJ#500. 「LibreOJ β Round」ZQC 的拼图
    Codeforces855C Helga Hufflepuff's Cup
    Codeforces895C Square Subsets
    Codeforces757D Felicity's Big Secret Revealed
    bzoj3694 最短路
    maven安装时报错的问题
    java static关键字
  • 原文地址:https://www.cnblogs.com/yfceshi/p/7257176.html
Copyright © 2011-2022 走看看