首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >发布设备上没有互联网连接的android应用程序给FileNotFoundException

发布设备上没有互联网连接的android应用程序给FileNotFoundException
EN

Stack Overflow用户
提问于 2013-11-07 13:44:28
回答 2查看 227关注 0票数 0

在这些特殊情况下,我的应用程序不会启动:

  • 没有互联网连接
  • 在设备上发射

并提供一个FileNotFoundException,因为我没有任何权限(请参阅下面的堆栈跟踪)。在其他情况下,这是可行的。我从mysql数据库中检索数据。在onCreate方法的主要活动,我检查互联网连接。

我在清单中拥有以下权限:

代码语言:javascript
复制
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />

我正在检查主要活动中的互联网连接:

代码语言:javascript
复制
private boolean isNetworkAvailable() {
         ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
         NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
         if(activeNetworkInfo.isAvailable()){
             return true; 
         }
         else {
             return false;
         }

错误消息:

代码语言:javascript
复制
11-07 14:15:16.176: E/AndroidRuntime(27318): Uncaught handler: thread main exiting due to uncaught exception
11-07 14:15:16.176: E/Monkey(27318): exception :java.io.FileNotFoundException: /dev/kmsg: open failed: EACCES (Permission denied)
11-07 14:15:16.200: E/AndroidRuntime(27318): exception :java.io.FileNotFoundException: /dev/kmsg: open failed: EACCES (Permission denied)
11-07 14:15:16.200: E/AndroidRuntime(27318): exception :java.io.FileNotFoundException: /dev/kmsg: open failed: EACCES (Permission denied)
11-07 14:15:16.200: E/AndroidRuntime(27318): FATAL EXCEPTION: main
11-07 14:15:16.200: E/AndroidRuntime(27318): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.phi.oudemarkt/com.phi.oudemarkt.MainActivity}: java.lang.NullPointerException
EN

回答 2

Stack Overflow用户

发布于 2013-11-07 13:59:51

用这个代替:

代码语言:javascript
复制
private boolean isNetworkAvailable() {
    ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
    return activeNetworkInfo != null && activeNetworkInfo.isConnected();
}
票数 0
EN

Stack Overflow用户

发布于 2013-11-07 14:39:01

尝试添加这样的权限

使用-权限android:name="android.permission.READ_EXTERNAL_STORAGE

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19837533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档