最近发现之前开发的APP 在Android9.0上安装时提示如下恶心的提示:

度娘大部分技术是建议修改  android:targetSdkVersion="17"及以上版本

于是乎开始更新打包更新自己的APP,意外的事情发生了,闪退!!!

debuger 发现如下错误:

低版本Androidsdk下之前正常,现在升级target报错,肯定跟这个有关,因为代码没有问题但总是报错。最后查阅资料了解到,在Android 4.0以上,网络连接不能放在主线程上,不然就会报错android.os.NetworkOnMainThreadException。但是4.0下版本可以不会报错。

贴出改造后代码:仅适合本项目使用哦,需要的拿走

timer = new Timer(true);

startTime = System.currentTimeMillis();

timer.schedule(task, 2000, 2);

private  TimerTask task = new TimerTask() {

@Override

public void run() {

if (task.scheduledExecutionTime() - startTime >= 1000 || !_touched) {

Message message = new Message();

Log.i("SplashActivity", (task.scheduledExecutionTime() - startTime)+"");

if(isConnectInternet()){

TIME_UP=1;

message.what = TIME_UP;

Bundle data =  new  Bundle();

HttpURLConnection connection = null;

BufferedReader reader = null;

try {

URL url = new URL(url);

connection = (HttpURLConnection) url.openConnection();

connection.setRequestMethod("GET");

connection.setConnectTimeout(5000);

connection.setReadTimeout(5000);

InputStream in = connection.getInputStream();

//对获取到的输入流进行读取

reader = new BufferedReader(new InputStreamReader(in,"UTF-8"));

StringBuilder response = new StringBuilder();

String line;

while ((line = reader.readLine()) != null){

response.append(line);

}

data.putString("value",response.toString()) ;

} catch (Exception e) {

e.printStackTrace();

}finally {

if (reader != null){

try {

reader.close();

} catch (IOException e) {

e.printStackTrace();

}

}

if (connection != null){

connection.disconnect();

}

}

message.setData(data);

}else{

message.what = 2;

}

handler.sendMessage(message);

timer.cancel();

this.cancel();

}

}

};

Handler handler =  new  Handler(){

@Override

public void  handleMessage(Message msg) {

switch (msg.what) {

case 1:

Bundle data = msg.getData();

String jsonStr = data.getString("value");

if (jsonStr.length() > 1) {

try {

jsonObject = new JSONObject(jsonStr.substring(1,

jsonStr.length() - 1));

linkUrl = jsonObject.getString("url")  ;

} catch (JSONException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

Intent intent = new Intent();

intent.setClass(MainActivity.this, WebviewActivity.class);

intent.putExtra("url", linkUrl);

intent.putExtra("type", "other");

startActivity(intent);

overridePendingTransition(R.anim.main_enter, R.anim.main_exit);

MainActivity.this.finish();

}

break;

case 2:

exit();

break;

}

super.handleMessage(msg);

}

};

此版本专旧版本为android,关于Android9.0 此应用专为旧版Android打造,因此可能无法正常运行。请尝试检查更新或与开发者联系...相关推荐

  1. 此应用专为旧版Android打造,因此可能无法正常运行。请尝试检查更新或与开发者联系

    最近调试一款新的机型时,出现"此应用专为旧版Android打造,因此可能无法正常运行.请尝试检查更新或与开发者联系"提示,出现这种错误的原因: 应用启动,startActivity ...

  2. 荣耀9如何调试为android测试机,Android9.0都开启测试了,你的华为、荣耀升级到EMUI8.0了吗?...

    原标题:Android9.0都开启测试了,你的华为.荣耀升级到EMUI8.0了吗? 按照华为.荣耀官方在不同场合透露的消息,华为.荣耀一共有27款手机要升级到基于Android8.0的EMUI8.0系 ...

  3. android9.0官方壁纸,安卓福利:全新Android 9.0原生壁纸 每一张都是谷歌的精挑细选!...

    原标题:安卓福利:全新Android 9.0原生壁纸 每一张都是谷歌的精挑细选! 至今,安卓碎片化的程度依然没有得到缓解,Android 8.0发布已经一年多,但却仅仅只有2%左右的用户成功尝到了奥利 ...

  4. 此版本专为旧版android打造,应用弹窗“此应用专为旧版Android打造,因此可能无法正常运行...”的原因...

    Android P上,有的应用打开时,会弹出对话框,内容:"此应用专为旧版Android打造,因此可能无法正常运行.请尝试检查更新或与开发者联系".用户会感到困惑,真正的原因是什么 ...

  5. 此应用专为旧版本打造

    在网上查找了一些方法,最终使用以下设置才能生效,在此记录下! 问题原因: Android P机型及以上,当应用的targetSdk版本低于17时,应用启动时会弹窗"此应用专为旧版Androi ...

  6. android app更新弹窗,应用弹窗“此应用专为旧版Android打造,因此可能无法正常运行...”的原因...

    Android P上,有的应用打开时,会弹出对话框,内容:"此应用专为旧版Android打造,因此可能无法正常运行.请尝试检查更新或与开发者联系".用户会感到困惑,真正的原因是什么 ...

  7. android切环境插件,Android Studio 2.0 - 插件太旧,请更新到更新版本,或设置ANDROID_DAILY_OVERRIDE环境变量...

    Android Studio 2.0 - 插件太旧,请更新到更新版本,或设置ANDROID_DAILY_OVERRIDE环境变量 我更新了Android Studio 2.0版并正常使用. 当我今天创 ...

  8. Android10.0 系统解析(02)——搭建Android源代码编译调试环境

    1.前言 Android的编译环境作为深入学习Android的基础,不可或缺,能够完整下载Android源代码并编译成功,对深入学习Android是非常关键和重要的一步.Android环境搭建比较繁琐 ...

  9. 正式版Android P,喜大普奔!一加6正式推送Android P正式版

    [手机中国新闻]北京时间10月11日,一加手机正式向一加6用户推送了Android P正式版. 一直以来,一加手机在Android大版本更新方面的跟进速度绝对堪称翘楚,在今年8月一加6用户便可下载尝鲜 ...

  10. android miui9.0改装条例,小米8青春版获得基于Android9.0定制的MIUI更新

    原标题:小米8青春版获得基于Android9.0定制的MIUI更新 集微网消息,在今年9月,小米发布了小米8青春版,它采用6.26英寸2280*1080分辨率的LCD材质屏幕,搭载高通骁龙660处理器 ...

最新文章

  1. xuanke java_wangshangxuankexitong - WEB源码|JSP源码/Java|源代码 - 源码中国
  2. Linux 服务器带宽异常跑满分析解决
  3. Django REST Framework(DRF)教程:快速入门
  4. LiveVideoStackCon 2019北京你来吗?
  5. opengl绘制长方体线框_OpenGL绘图实例十之绘制3D机器人
  6. python编程入门单例_Python单例模式实例详解
  7. 优先级队列用的的数据结构
  8. workbook对象需要关闭_XSSFWorkbook对象 进行zip打包时 用write资源流自动关闭处理办法...
  9. Oracle性能调优之--Buffer cache 的调整与优化
  10. 基于Hive数据仓库的标签画像实战
  11. 【REDIS】redis安装
  12. CET6 历年真题原词复现 核心词汇 做题技巧 听力拿分技巧汇总(这篇文章是英语四六级考试最后的版本,谢谢大家一路陪伴)
  13. 尤雨溪:重头来过的 Vue3 带来了什么?
  14. 如何在网上挣钱,这几个项目让你月入过万元
  15. mac制作icns图标
  16. 记录自己从零开始创建个人小程序到发布的大致过程
  17. python框架之flak学习笔记
  18. 【iOS】仿写iOS计算器总结
  19. 数据中心机房精密空调制冷量的估算
  20. Linux统计项目代码行数

热门文章

  1. linux系统的课程实践,“Linux操作系统与应用”课程教学与实践
  2. 股票历史数据下载接口汇总(动态更新)
  3. 中国移动苏州研发中心前端笔试(1)
  4. 第二篇 FPGA数字信号处理_并行FIR滤波器Verilog设计
  5. 神经网络控制与matlab仿真,神经网络模型matlab例子
  6. Codejock Xtreme ToolkitPro MFC 使用
  7. VC9、VC11、VC14、VC15库 32位 64位 免费下载
  8. Ubuntu18.04安装gcc——史上最全安装教程
  9. android 自动打开qq,qq自动发消息脚本
  10. WebView交互架构项目实战(三)(1),老罗android开发视频教程