你的 dbhelper 的版本 改成了 1 但是 之前安装过的 版本已经是4 了
不能覆盖掉数据库 如果只是测试的时候用 一直用同一个数就行了 升级数据库是 把版号增加
或者 dbhelper的构造方法传的数 比4大就行了
在BaseActivity里写授权申请,首先检查申请的权限是不是被授权了,如果不是就加入待授权数组里,去申请权限。如果全部已授权,就直接回掉授权成功。
然后重写授权返回方法。系统会返回2个数组, String[] permissions是你申请的权限,int[] grantResults是授权结果。拿出授权结果比对,如果授权,加入授权数组,如果拒绝,加入拒绝数组。回掉给注册PermissionListener的activity
解决办法:
/
获取ip地址
@return
/
public static String getHostIP() {
String hostIp = null;
try {
Enumeration nis = NetworkInterfacegetNetworkInterfaces();
InetAddress ia = null;
while (nishasMoreElements()) {
NetworkInterface ni = (NetworkInterface) nisnextElement();
Enumeration<InetAddress> ias = nigetInetAddresses();
while (iashasMoreElements()) {
ia = iasnextElement();
if (ia instanceof Inet6Address) {
continue;// skip ipv6
}
String ip = iagetHostAddress();
if (!"127001"equals(ip)) {
hostIp = iagetHostAddress();
break;
}
}
}
} catch (SocketException e) {
Logi("yao", "SocketException");
eprintStackTrace();
}
return hostIp;
}
通过主动的方式通知系统我们需要文件列表,要向系统发送广播
sendBroadcast(new Intent(IntentACTION_MEDIA_MOUNTED, Uriparse(“file://”+ EnvironmentgetExternalStorageDirectory())));
然后通过接收器获取系统文列表
public class MediaScannerReceiver extends BroadcastReceiver{
private final static String TAG = ”MediaScannerReceiver”;
@Override
public void onReceive(Context context, Intent intent) {
String action = intentgetAction();
Uri uri = intentgetData();
String externalStoragePath = EnvironmentgetExternalStorageDirectory()getPath();
if (actionequals(IntentACTION_BOOT_COMPLETED)) {
// scan internal storage
scan(context, MediaProviderINTERNAL_VOLUME);
} else {
if (urigetScheme()equals(“file”)) {
// handle intents related to external storage
String path = urigetPath();
if (actionequals(IntentACTION_MEDIA_MOUNTED) &&
externalStoragePathequals(path)) {
scan(context, MediaProviderEXTERNAL_VOLUME);
} else if (actionequals(IntentACTION_MEDIA_SCANNER_SCAN_FILE) &&
path != null && pathstartsWith(externalStoragePath + ”/”)) {
scanFile(context, path);
}
}
}
}
private void scan(Context context, String volume) {
Bundle args = new Bundle();
argsputString(“volume”, volume);
contextstartService(
new Intent(context, MediaScannerServiceclass)putExtras(args));
}
private void scanFile(Context context, String path) {
Bundle args = new Bundle();
argsputString(“filepath”, path);
contextstartService(
new Intent(context, MediaScannerServiceclass)putExtras(args));
}
}
以上就是关于android 里面测试的时候 version 写的是什么的版本号全部的内容,包括:android 里面测试的时候 version 写的是什么的版本号、Android动态获取权限,Android 10 读取本地文件权限解决方案、android 如何获取本机ip地址最佳方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)