本文介绍了检查是否其连接与否的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在logcat的输出是这样的..

  6月1日至三十○日:34:43.633:D / AndroidRuntime(1228):>>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit<<<<<<
    6月1日至30日:34:43.643:D / AndroidRuntime(1228):CheckJNI为ON
    6月1日至30日:34:43.703:D / dalvikvm(1228):试图加载的lib libjavacore.so为0x0
    6月1日至30日:34:43.713:D / dalvikvm(1228):增加了共享库libjavacore.so为0x0
    6月1日至30日:34:43.733:D / dalvikvm(1228):试图加载的lib libnativehelper.so为0x0
    6月1日至30日:34:43.743:D / dalvikvm(1228):增加了共享库libnativehelper.so为0x0
    6月1日至30日:34:43.743:D / dalvikvm(1228):无JNI_OnLoad在libnativehelper.so为0x0发现,跳过的init
    6月1日至30日:34:43.933:D / dalvikvm(1228):注:类Landroid /应用/ ActivityManagerNative;拥有179未实现(抽象)方法
    6月1日至30日:34:44.463:E / memtrack(1228):无法加载memtrack模块(没有这样的文件或目录)
    6月1日至30日:34:44.463:E / android.os.Debug(1228):加载失败memtrack模块:-2
    6月1日至30日:34:44.743:D / AndroidRuntime(1228):在主入口com.android.commands.pm.Pm
    6月1日至30日:34:44.783:D / AndroidRuntime(1228):关闭VM
    6月1日至30日:34:44.783:D / dalvikvm(1228):调试器脱落;对象注册了1项
    6月1日至30日:34:45.503:D / AndroidRuntime(1239):>>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit<<<<<<
    6月1日至30日:34:45.503:D / AndroidRuntime(1239):CheckJNI为ON
    6月1日至30日:34:45.563:D / dalvikvm(1239):试图加载的lib libjavacore.so为0x0
    6月1日至30日:34:45.573:D / dalvikvm(1239):增加了共享库libjavacore.so为0x0
    6月1日至30日:34:45.593:D / dalvikvm(1239):试图加载的lib libnativehelper.so为0x0
    6月1日至30日:34:45.593:D / dalvikvm(1239):增加了共享库libnativehelper.so为0x0
    6月1日至30日:34:45.603:D / dalvikvm(1239):无JNI_OnLoad在libnativehelper.so为0x0发现,跳过的init
    6月1日至30日:34:45.863:D / dalvikvm(1239):注:类Landroid /应用/ ActivityManagerNative;拥有179未实现(抽象)方法
    6月1日至30日:34:46.373:E / memtrack(1239):无法加载memtrack模块(没有这样的文件或目录)
    6月1日至30日:34:46.373:E / android.os.Debug(1239):加载失败memtrack模块:-2
    6月1日至30日:34:46.653:D / AndroidRuntime(1239):在主入口com.android.commands.am.Am
    6月1日至30日:34:46.723:I / ActivityManager(379):开始U0 {行为= android.intent.action.MAIN猫= [android.intent.category.LAUNCHER] FLG = 0x10000000的CMP = com.ptuxiaki.stock $从1239 PID $ p pdictions / .MainActivity}
    6月1日至30日:34:46.763:E / gralloc_goldfish(50):gralloc_alloc:不匹配的使用标志:328点¯x583,使用333
    6月1日至30日:34:46.763:W / GraphicBufferAllocator(50):ALLOC(328,583,1,00000333,...)失败-22(参数无效)
    6月1日至30日:34:46.763:E /(50):GraphicBufferAlloc :: createGraphicBuffer(W = 328,H = 583),失败(无效的参数),手柄=为0x0
    6月1日至30日:34:46.763:E / BufferQueue(379):ScreenshotClient] dequeueBuffer:SurfaceComposer :: createGraphicBuffer失败
    6月1日至30日:34:46.763:W /窗口管理器(379):截图故障服用屏幕截图(328x583)到层21005
    6月1日至30日:34:46.783:D / AndroidRuntime(1239):关闭VM
    6月1日至30日:34:46.803:D / JDWP(1239):GOT唤醒信号,选择的拯救
    6月1日至30日:34:46.803:D / dalvikvm(1239):调试器脱落;对象注册了1项
    6月1日至30日:34:46.833:D / dalvikvm(1250):不晚启用CheckJNI(已上)
    6月1日至30日:34:46.833:I / ActivityManager(379):开始的活动com.ptuxiaki.stock predictions / .MainActivity PROC com.ptuxiaki.stock predictions:PID = 1250 UID = 10054导报= {50054,3003}
    6月1日至30日:34:47.513:D / dalvikvm(1250):GC_FOR_ALLOC释放47K,4%免​​费3137K / 3256K,暂停57ms,总59ms
    6月1日至30日:34:47.533:I / dalvikvm堆(1250):成长堆(frag的情况下),以4.202MB为1127536字节分配
    6月1日至30日:34:47.603:D / dalvikvm(1250):GC_FOR_ALLOC释放2K,3%的自由4235K / 4360K,暂停71ms,总71ms
    6月1日至30日:34:47.813:D / AndroidRuntime(1250):关闭VM
    6月1日至30日:34:47.813:W / dalvikvm(1250):主题ID = 1:螺纹未捕获的异常(组= 0xb1b06ba8)退出
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):致命异常:主要
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):工艺:com.ptuxiaki.stock predictions,PID:1250
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):了java.lang.RuntimeException:无法启动活动ComponentInfo {com.ptuxiaki.stock predictions / com.ptuxiaki.stock predictions.MainActivity} :显示java.lang.NullPointerException
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在android.app.ActivityThread.access $ 800(ActivityThread.java:135)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1196)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在android.os.Handler.dispatchMessage(Handler.java:102)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在android.os.Looper.loop(Looper.java:136)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在android.app.ActivityThread.main(ActivityThread.java:5017)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在java.lang.reflect.Method.invokeNative(本机方法)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在java.lang.reflect.Method.invoke(Method.java:515)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:779)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在dalvik.system.NativeStart.main(本机方法)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):因:显示java.lang.NullPointerException
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在com.ptuxiaki.stock predictions.MainActivity.onCreate(MainActivity.java:55)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在android.app.Activity.performCreate(Activity.java:5231)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
    6月1日至30日:34:47.823:E / AndroidRuntime(1250):11 ...更多
    6月1日至30日:34:47.823:W / ActivityManager(379):强制完成活动com.ptuxiaki.stock predictions / .MainActivity
    6月1日至30日:34:48.013:D / dalvikvm(1250):GC_FOR_ALLOC释放217K,6%免费4532K / 4816K,暂停22毫秒,22毫秒总
    6月1日至30日:34:48.243:I /窗口管理器(379):截图最大重试令牌4 {b215f238 ActivityRecord {b2373780 U0 com.ptuxiaki.stock predictions / .MainActivity T6 F}} appWin =窗口{b22ec3a8 U0开始com.ptuxiaki.stock predictions} drawState = 4
    6月1日至30日:34:48.243:W /窗口管理器(379):截图故障服用屏幕截图(720x1280)到层21010
    6月1日至30日:34:48.773:W / ActivityManager(379):为ActivityRecord {b2373780 U0 com.ptuxiaki.stock predictions / .MainActivity T6 F}活动暂停超时
    6月1日至30日:34:48.883:W / EGL_emulation(540):eglSurfaceAttrib没有实现
    6月1日至30日:34:49.933:D / LightsService(379):过多的延迟设置光:218ms
    6月1日至30日:34:50.033:E /的Soundpool(379):错误加载/system/media/audio/ui/Effect_Tick.ogg
    6月1日至30日:34:50.033:W / AudioService(379)的Soundpool无法加载文件:/system/media/audio/ui/Effect_Tick.ogg
    6月1日至30日:34:50.033:E /的Soundpool(379):错误加载/system/media/audio/ui/Effect_Tick.ogg
    6月1日至30日:34:50.033:W / AudioService(379)的Soundpool无法加载文件:/system/media/audio/ui/Effect_Tick.ogg
    6月1日至30日:34:50.033:E /的Soundpool(379):错误加载/system/media/audio/ui/Effect_Tick.ogg
    6月1日至30日:34:50.033:W / AudioService(379)的Soundpool无法加载文件:/system/media/audio/ui/Effect_Tick.ogg
    6月1日至30日:34:50.053:E /的Soundpool(379):错误加载/system/media/audio/ui/Effect_Tick.ogg
    6月1日至30日:34:50.053:W / AudioService(379)的Soundpool无法加载文件:/system/media/audio/ui/Effect_Tick.ogg
    6月1日至30日:34:50.053:E /的Soundpool(379):错误加载/system/media/audio/ui/Effect_Tick.ogg
    6月1日至30日:34:50.053:W / AudioService(379)的Soundpool无法加载文件:/system/media/audio/ui/Effect_Tick.ogg
    6月1日至30日:34:50.053:E /的Soundpool(379):错误加载/system/media/audio/ui/Key$p$pssStandard.ogg
    6月1日至30日:34:50.053:W / AudioService(379)的Soundpool无法加载文件:/system/media/audio/ui/Key$p$pssStandard.ogg
    6月1日至30日:34:50.063:W / InputMethodManagerService(379):窗口已经集中,忽视聚焦增益:com.android.internal.view.IInputMethodClient$Stub$Proxy@b2385490属性= NULL,令牌= android.os。 BinderProxy @ b20c9ac8
    6月1日至30日:34:50.073:E /的Soundpool(379):错误加载/system/media/audio/ui/Key$p$pssSpacebar.ogg
    6月1日至30日:34:50.073:W / AudioService(379)的Soundpool无法加载文件:/system/media/audio/ui/Key$p$pssSpacebar.ogg
    6月1日至30日:34:50.073:E /的Soundpool(379):错误加载/system/media/audio/ui/Key$p$pssDelete.ogg
    6月1日至30日:34:50.073:W / AudioService(379)的Soundpool无法加载文件:/system/media/audio/ui/Key$p$pssDelete.ogg
    6月1日至30日:34:50.073:E /的Soundpool(379):错误加载/system/media/audio/ui/Key$p$pssReturn.ogg
    6月1日至30日:34:50.073:W / AudioService(379)的Soundpool无法加载文件:/system/media/audio/ui/Key$p$pssReturn.ogg
    6月1日至30日:34:50.083:E /的Soundpool(379):错误加载/system/media/audio/ui/Key$p$pssInvalid.ogg
    6月1日至30日:34:50.083:W / AudioService(379)的Soundpool无法加载文件:/system/media/audio/ui/Key$p$pssInvalid.ogg
    6月1日至30日:34:50.083:W / AudioService(379):onLoadSoundEffects(),错误-1加载时的样品
    6月1日至30日:34:50.083:I /流程(1250):发送信号。 PID:1250 SIG:9
    6月1日至30日:34:50.103:D / LightsService(379):过多的延迟设置光:124ms
    6月1日至30日:34:50.113:I / ActivityManager(379):进程com.ptuxiaki.stock predictions(PID 1250)已经死亡。
    6月1日至30日:34:50.113:我/的WindowState(379):WIN死亡:窗口{b23292d0 U0 com.ptuxiaki.stock predictions / com.ptuxiaki.stock predictions.MainActivity}
    6月1日至30日:34:50.203:D / LightsService(379):过多的延迟设置光:109ms

和我的code是...当我尝试运行它说,已停止工作...我有清单中的权限许可权。任何人都可以点我什么,我做错了什么?当应用程序开始检测是否有网络连接我想要做的是什么,如果是做什么我做的onCreate,如果它不是创建一个警告对话框,当用户presses确定启动设置wifi的页面才能够打开无线上..请帮我...

 进口java.io.BufferedReader中;
进口java.io.IOException异常;
进口的java.io.InputStream;
进口java.io.InputStreamReader中;
进口的java.util.ArrayList;
进口的java.util.HashMap;
进口的java.util.List;
进口的java.util.Map;进口org.apache.http.Htt presponse;
进口org.apache.http.client.ClientProtocolException;
进口org.apache.http.client.HttpClient;
进口org.apache.http.client.methods.HttpPost;
进口org.apache.http.impl.client.DefaultHttpClient;
进口org.json.JSONArray;
进口org.json.JSONException;
进口org.json.JSONObject;进口android.net.ConnectivityManager;
进口android.net.NetworkInfo;
进口android.os.AsyncTask;
进口android.os.Bundle;
进口android.provider.Settings;
进口android.app.Activity;
进口android.app.AlertDialog;
进口android.app.ProgressDialog;
进口android.content.Context;
进口android.content.DialogInterface;
进口android.content.Intent;
进口android.view.Menu;
进口android.view.View;
进口android.widget.AdapterView;
进口android.widget.ListView;
进口android.widget.SimpleAdapter;
进口android.widget.Toast;公共类MainActivity延伸活动{
 私人字符串jsonResult;
 私人字符串URL =htt​​p://spinner.bl.ee/getstocks.php;
 私人的ListView ListView的;
 ProgressDialog pDialog;
私人活动范围内; @覆盖
 保护无效的onCreate(捆绑savedInstanceState){
  super.onCreate(savedInstanceState);
  的setContentView(R.layout.activity_main);
  ListView控件=(ListView控件)findViewById(R.id.listView1);
  accessWebService();
  onDetectConnected();
  registerCallClickBack();
 } 公共无效onDetectConnected(){
     ConnectivityManager厘米=(ConnectivityManager)上下文
             .getSystemService(Context.CONNECTIVITY_SERVICE);
    的NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
    布尔network_connected = activeNetwork!= NULL
             &功放;&安培; activeNetwork.isAvailable();
        如果(!network_connected){
            onDetectNetworkState()显示()。
        }
 }公共AlertDialog onDetectNetworkState(){
AlertDialog.Builder助洗剂=新AlertDialog.Builder(本);
builder1.setMessage(Εντοπίστηκεπρόβλημμαμετησύνδεσηστοδιαδύκτιο。Παρακαλώσυνδεθήτεστοδιαδύκτιο。)
.setTitle(Χωρίςσύνδεσηδικτύου)
.setNegativeButton(Άκυρο,新DialogInterface.OnClickListener(){    @覆盖
    公共无效的onClick(DialogInterface对话,诠释它){
        // TODO自动生成方法存根
        MainActivity.this.finish();
    }
})
.setPositiveButton(Οκ,新DialogInterface.OnClickListener(){    @覆盖
    公共无效的onClick(DialogInterface对话,诠释它){
        // TODO自动生成方法存根
        startActivity(新意图(Settings.ACTION_WIRELESS_SETTINGS));
    }
});
    返回builder1.create();
} @覆盖
公共无效onBack pressed(){
    // TODO自动生成方法存根
     onCreateDialogBack()显示()。
}
公共AlertDialog onCreateDialogBack(){
     AlertDialog.Builder建设者=新AlertDialog.Builder(本);
        builder.setTitle(R.string.exit)
                .setMessage(R.string.exit_message)
                .setPositiveButton(R.string.yes,新DialogInterface.OnClickListener(){                    @覆盖
                    公共无效的onClick(DialogInterface对话,诠释它){
                        // TODO自动生成方法存根
                        MainActivity.this.finish();
                    }
                })
                .setNegativeButton(R.string.cancel,新DialogInterface.OnClickListener(){                    @覆盖
                    公共无效的onClick(DialogInterface对话,诠释它){
                        // TODO自动生成方法存根
                        dialog.cancel();
                    }
                });
        返回builder.create();
}
私人无效registerCallClickBack(){
    // TODO自动生成方法存根
    ListView控件列表=(ListView控件)findViewById(R.id.listView1);
    list.setOnItemClickListener(新AdapterView.OnItemClickListener(){        @覆盖
        公共无效onItemClick(适配器视图<>母公司,查看viewClicked,INT位置,
                长ID){
            // TODO自动生成方法存根
            字符串消息=Έχετεεπιλέξειτην+编号+ημετοχή
            Toast.makeText(MainActivity.this,消息,Toast.LENGTH_SHORT).show();
        }
    });
}@覆盖
 公共布尔onCreateOptionsMenu(菜单菜单){
  //充气菜单;如果是present这增加了项目操作栏。
  。getMenuInflater()膨胀(R.menu.main,菜单);
  返回true;
 } //异步任务访问Web
 私有类JsonReadTask扩展的AsyncTask<弦乐,太虚,字符串> {
     @覆盖
     在preExecute保护无效(){
         super.on preExecute();
         pDialog =新ProgressDialog(MainActivity.this);
         pDialog.setMessage(ΓίνεταιΛήψημετοχών......);
         pDialog.setCancelable(假);
         pDialog.show();     }
  @覆盖
  保护字符串doInBackground(字符串... PARAMS){
   HttpClient的HttpClient的=新DefaultHttpClient();
   HttpPost httppost =新HttpPost(PARAMS [0]);
   尝试{
    HTT presponse响应= httpclient.execute(httppost);
    jsonResult = inputStreamToString(
      。response.getEntity()的getContent())的toString();
   }   赶上(ClientProtocolException E){
    e.printStackTrace();
   }赶上(IOException异常五){
    e.printStackTrace();
   }
   返回null;
  }  私人的StringBuilder inputStreamToString(InputStream为){
   串rLine =;
   StringBuilder的答案=新的StringBuilder();
   RD的BufferedReader =新的BufferedReader(新的InputStreamReader(是));   尝试{
    而((rLine = rd.readLine())!= NULL){
     answer.append(rLine);
    }
   }   赶上(IOException异常五){
    // e.printStackTrace();
    Toast.makeText(getApplicationContext(),
      错误...+ e.toString(),Toast.LENGTH_LONG).show();
   }
   返回的答案;
  }  @覆盖
  保护无效onPostExecute(字符串结果){   ListDrwaer();
   pDialog.dismiss();
  } } //结束异步任务 公共无效accessWebService(){
  JsonReadTask任务=新JsonReadTask();
  //通行证的URL字符串数组值
  task.execute(新的String [] {URL});
 } //建立列表视图哈希集合
 公共无效ListDrwaer(){
  清单<地图<字符串,字符串>> stocksList =新的ArrayList<地图<字符串,字符串>>();  尝试{
   JSONObject的jsonResponse =新的JSONObject(jsonResult);
   JSONArray jsonMainNode = jsonResponse.optJSONArray(metoxes);   的for(int i = 0; I< jsonMainNode.length();我++){
    JSONObject的jsonChildNode = jsonMainNode.getJSONObject(I)
    字符串名称= jsonChildNode.optString(名称);
    串号= jsonChildNode.optString(价格);
    字符串ID = jsonChildNode.optString(ID);
    字符串输出= ID +)+姓名+ - +数字;
    stocksList.add(createStockList(metoxes输出));
   }  }赶上(JSONException E){
   Toast.makeText(getApplicationContext(),错误+ e.toString()
     Toast.LENGTH_SHORT).show();
  }  SimpleAdapter simpleAdapter =新SimpleAdapter(这一点,stocksList,
    android.R.layout.simple_list_item_1,
    新的String [] {metoxes},新的INT [] {android.R.id.text1});
  listView.setAdapter(simpleAdapter);
 } 私人的HashMap<字符串,字符串> createStockList(字符串名称,串号){
  HashMap的<字符串,字符串> employeeNameNo =新的HashMap<字符串,字符串>();
  employeeNameNo.put(姓名,号码);  返回employeeNameNo;
 }
}

我的清单文件是这样的...

 <?XML版本=1.0编码=UTF-8&GT?;
<清单的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
    包=com.ptuxiaki.stock predictions
    安卓版code =1
    机器人:=的versionName1.0>    <用途-SDK
        安卓的minSdkVersion =11
        机器人:targetSdkVersion =19/>
    <使用许可权的android:NAME =android.permission.INTERNET对/>
    <使用许可权的android:NAME =android.permission.ACCESS_NETWORK_STATE/>
    <使用许可权的android:NAME =android.permission.ACCESS_WIFI_STATE/>
    <使用许可权的android:NAME =android.permission.CHANGE_NETWORK_STATE/>
    <使用许可权的android:NAME =android.permission.CHANGE_WIFI_STATE/>    <应用
        机器人:allowBackup =真
        机器人:图标=@绘制/ ic_launcher_stock
        机器人:标签=@字符串/ APP_NAME
        机器人:主题=@风格/ AppTheme>
        <活动
            机器人:名字=com.ptuxiaki.stock predictions.MainActivity
            机器人:标签=@字符串/ APP_NAME>
            &所述;意图滤光器>
                <作用机器人:名字=android.intent.action.MAIN/>                <类机器人:名字=android.intent.category.LAUNCHER/>
            &所述; /意图滤光器>
        < /活性GT;
    < /用途>< /清单>

这是什么,似乎我在这里有问题。

  7月1日至三十○日:10:19.463:E / AndroidRuntime(1720):在com.ptuxiaki.stock predictions.MainActivity.onDetectConnected(MainActivity.java:58)
7月1日至30日:10:19.463:E / AndroidRuntime(1720):在com.ptuxiaki.stock predictions.MainActivity.onCreate(MainActivity.java:53)

53行是:

  onDetectConnected();

第58行是:

  ConnectivityManager厘米=(ConnectivityManager)上下文
             .getSystemService(Context.CONNECTIVITY_SERVICE);


解决方案

删除

 私人活动范围内;

和无处不在,当你使用它,也将其删除。例如改变

  context.getSystemService(...

只是

  getSystemService(...

您MainActivity已经是一个语境,那就是你所需要的。
您创建的上下文场,但为空,并认为反正不会工作,因为你需要在系统中创建一个背景。那就是你的活动是什么。

The logcat output is this..

 01-30 06:34:43.633: D/AndroidRuntime(1228): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<
    01-30 06:34:43.643: D/AndroidRuntime(1228): CheckJNI is ON
    01-30 06:34:43.703: D/dalvikvm(1228): Trying to load lib libjavacore.so 0x0
    01-30 06:34:43.713: D/dalvikvm(1228): Added shared lib libjavacore.so 0x0
    01-30 06:34:43.733: D/dalvikvm(1228): Trying to load lib libnativehelper.so 0x0
    01-30 06:34:43.743: D/dalvikvm(1228): Added shared lib libnativehelper.so 0x0
    01-30 06:34:43.743: D/dalvikvm(1228): No JNI_OnLoad found in libnativehelper.so 0x0, skipping init
    01-30 06:34:43.933: D/dalvikvm(1228): Note: class Landroid/app/ActivityManagerNative; has 179 unimplemented (abstract) methods
    01-30 06:34:44.463: E/memtrack(1228): Couldn't load memtrack module (No such file or directory)
    01-30 06:34:44.463: E/android.os.Debug(1228): failed to load memtrack module: -2
    01-30 06:34:44.743: D/AndroidRuntime(1228): Calling main entry com.android.commands.pm.Pm
    01-30 06:34:44.783: D/AndroidRuntime(1228): Shutting down VM
    01-30 06:34:44.783: D/dalvikvm(1228): Debugger has detached; object registry had 1 entries
    01-30 06:34:45.503: D/AndroidRuntime(1239): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<
    01-30 06:34:45.503: D/AndroidRuntime(1239): CheckJNI is ON
    01-30 06:34:45.563: D/dalvikvm(1239): Trying to load lib libjavacore.so 0x0
    01-30 06:34:45.573: D/dalvikvm(1239): Added shared lib libjavacore.so 0x0
    01-30 06:34:45.593: D/dalvikvm(1239): Trying to load lib libnativehelper.so 0x0
    01-30 06:34:45.593: D/dalvikvm(1239): Added shared lib libnativehelper.so 0x0
    01-30 06:34:45.603: D/dalvikvm(1239): No JNI_OnLoad found in libnativehelper.so 0x0, skipping init
    01-30 06:34:45.863: D/dalvikvm(1239): Note: class Landroid/app/ActivityManagerNative; has 179 unimplemented (abstract) methods
    01-30 06:34:46.373: E/memtrack(1239): Couldn't load memtrack module (No such file or directory)
    01-30 06:34:46.373: E/android.os.Debug(1239): failed to load memtrack module: -2
    01-30 06:34:46.653: D/AndroidRuntime(1239): Calling main entry com.android.commands.am.Am
    01-30 06:34:46.723: I/ActivityManager(379): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.ptuxiaki.stockpredictions/.MainActivity} from pid 1239
    01-30 06:34:46.763: E/gralloc_goldfish(50): gralloc_alloc: Mismatched usage flags: 328 x 583, usage 333
    01-30 06:34:46.763: W/GraphicBufferAllocator(50): alloc(328, 583, 1, 00000333, ...) failed -22 (Invalid argument)
    01-30 06:34:46.763: E/(50): GraphicBufferAlloc::createGraphicBuffer(w=328, h=583) failed (Invalid argument), handle=0x0
    01-30 06:34:46.763: E/BufferQueue(379): [ScreenshotClient] dequeueBuffer: SurfaceComposer::createGraphicBuffer failed
    01-30 06:34:46.763: W/WindowManager(379): Screenshot failure taking screenshot for (328x583) to layer 21005
    01-30 06:34:46.783: D/AndroidRuntime(1239): Shutting down VM
    01-30 06:34:46.803: D/jdwp(1239): Got wake-up signal, bailing out of select
    01-30 06:34:46.803: D/dalvikvm(1239): Debugger has detached; object registry had 1 entries
    01-30 06:34:46.833: D/dalvikvm(1250): Not late-enabling CheckJNI (already on)
    01-30 06:34:46.833: I/ActivityManager(379): Start proc com.ptuxiaki.stockpredictions for activity com.ptuxiaki.stockpredictions/.MainActivity: pid=1250 uid=10054 gids={50054, 3003}
    01-30 06:34:47.513: D/dalvikvm(1250): GC_FOR_ALLOC freed 47K, 4% free 3137K/3256K, paused 57ms, total 59ms
    01-30 06:34:47.533: I/dalvikvm-heap(1250): Grow heap (frag case) to 4.202MB for 1127536-byte allocation
    01-30 06:34:47.603: D/dalvikvm(1250): GC_FOR_ALLOC freed 2K, 3% free 4235K/4360K, paused 71ms, total 71ms
    01-30 06:34:47.813: D/AndroidRuntime(1250): Shutting down VM
    01-30 06:34:47.813: W/dalvikvm(1250): threadid=1: thread exiting with uncaught exception (group=0xb1b06ba8)
    01-30 06:34:47.823: E/AndroidRuntime(1250): FATAL EXCEPTION: main
    01-30 06:34:47.823: E/AndroidRuntime(1250): Process: com.ptuxiaki.stockpredictions, PID: 1250
    01-30 06:34:47.823: E/AndroidRuntime(1250): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ptuxiaki.stockpredictions/com.ptuxiaki.stockpredictions.MainActivity}: java.lang.NullPointerException
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at android.app.ActivityThread.access$800(ActivityThread.java:135)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at android.os.Handler.dispatchMessage(Handler.java:102)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at android.os.Looper.loop(Looper.java:136)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at android.app.ActivityThread.main(ActivityThread.java:5017)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at java.lang.reflect.Method.invokeNative(Native Method)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at java.lang.reflect.Method.invoke(Method.java:515)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at dalvik.system.NativeStart.main(Native Method)
    01-30 06:34:47.823: E/AndroidRuntime(1250): Caused by: java.lang.NullPointerException
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at com.ptuxiaki.stockpredictions.MainActivity.onCreate(MainActivity.java:55)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at android.app.Activity.performCreate(Activity.java:5231)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
    01-30 06:34:47.823: E/AndroidRuntime(1250):     ... 11 more
    01-30 06:34:47.823: W/ActivityManager(379):   Force finishing activity com.ptuxiaki.stockpredictions/.MainActivity
    01-30 06:34:48.013: D/dalvikvm(1250): GC_FOR_ALLOC freed 217K, 6% free 4532K/4816K, paused 22ms, total 22ms
    01-30 06:34:48.243: I/WindowManager(379): Screenshot max retries 4 of Token{b215f238 ActivityRecord{b2373780 u0 com.ptuxiaki.stockpredictions/.MainActivity t6 f}} appWin=Window{b22ec3a8 u0 Starting com.ptuxiaki.stockpredictions} drawState=4
    01-30 06:34:48.243: W/WindowManager(379): Screenshot failure taking screenshot for (720x1280) to layer 21010
    01-30 06:34:48.773: W/ActivityManager(379): Activity pause timeout for ActivityRecord{b2373780 u0 com.ptuxiaki.stockpredictions/.MainActivity t6 f}
    01-30 06:34:48.883: W/EGL_emulation(540): eglSurfaceAttrib not implemented
    01-30 06:34:49.933: D/LightsService(379): Excessive delay setting light: 218ms
    01-30 06:34:50.033: E/SoundPool(379): error loading /system/media/audio/ui/Effect_Tick.ogg
    01-30 06:34:50.033: W/AudioService(379): Soundpool could not load file: /system/media/audio/ui/Effect_Tick.ogg
    01-30 06:34:50.033: E/SoundPool(379): error loading /system/media/audio/ui/Effect_Tick.ogg
    01-30 06:34:50.033: W/AudioService(379): Soundpool could not load file: /system/media/audio/ui/Effect_Tick.ogg
    01-30 06:34:50.033: E/SoundPool(379): error loading /system/media/audio/ui/Effect_Tick.ogg
    01-30 06:34:50.033: W/AudioService(379): Soundpool could not load file: /system/media/audio/ui/Effect_Tick.ogg
    01-30 06:34:50.053: E/SoundPool(379): error loading /system/media/audio/ui/Effect_Tick.ogg
    01-30 06:34:50.053: W/AudioService(379): Soundpool could not load file: /system/media/audio/ui/Effect_Tick.ogg
    01-30 06:34:50.053: E/SoundPool(379): error loading /system/media/audio/ui/Effect_Tick.ogg
    01-30 06:34:50.053: W/AudioService(379): Soundpool could not load file: /system/media/audio/ui/Effect_Tick.ogg
    01-30 06:34:50.053: E/SoundPool(379): error loading /system/media/audio/ui/KeypressStandard.ogg
    01-30 06:34:50.053: W/AudioService(379): Soundpool could not load file: /system/media/audio/ui/KeypressStandard.ogg
    01-30 06:34:50.063: W/InputMethodManagerService(379): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@b2385490 attribute=null, token = android.os.BinderProxy@b20c9ac8
    01-30 06:34:50.073: E/SoundPool(379): error loading /system/media/audio/ui/KeypressSpacebar.ogg
    01-30 06:34:50.073: W/AudioService(379): Soundpool could not load file: /system/media/audio/ui/KeypressSpacebar.ogg
    01-30 06:34:50.073: E/SoundPool(379): error loading /system/media/audio/ui/KeypressDelete.ogg
    01-30 06:34:50.073: W/AudioService(379): Soundpool could not load file: /system/media/audio/ui/KeypressDelete.ogg
    01-30 06:34:50.073: E/SoundPool(379): error loading /system/media/audio/ui/KeypressReturn.ogg
    01-30 06:34:50.073: W/AudioService(379): Soundpool could not load file: /system/media/audio/ui/KeypressReturn.ogg
    01-30 06:34:50.083: E/SoundPool(379): error loading /system/media/audio/ui/KeypressInvalid.ogg
    01-30 06:34:50.083: W/AudioService(379): Soundpool could not load file: /system/media/audio/ui/KeypressInvalid.ogg
    01-30 06:34:50.083: W/AudioService(379): onLoadSoundEffects(), Error -1 while loading samples
    01-30 06:34:50.083: I/Process(1250): Sending signal. PID: 1250 SIG: 9
    01-30 06:34:50.103: D/LightsService(379): Excessive delay setting light: 124ms
    01-30 06:34:50.113: I/ActivityManager(379): Process com.ptuxiaki.stockpredictions (pid 1250) has died.
    01-30 06:34:50.113: I/WindowState(379): WIN DEATH: Window{b23292d0 u0 com.ptuxiaki.stockpredictions/com.ptuxiaki.stockpredictions.MainActivity}
    01-30 06:34:50.203: D/LightsService(379): Excessive delay setting light: 109ms

and my code is...when i try to run it says has stopped working...i have the permission access_network_state in the manifest. can anyone point me what i am doing wrong??what i want to do is when the app starts to detect if there is network connection and if it is to do what i do in onCreate, if it isnt to create an alert dialog and when user presses ok to launch the settings wifi page to be able to turn the wifi on.. please help me...

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.AsyncTask;
import android.os.Bundle;
import android.provider.Settings;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;

public class MainActivity extends Activity {
 private String jsonResult;
 private String url = "http://spinner.bl.ee/getstocks.php";
 private ListView listView;
 ProgressDialog pDialog;
private Activity context;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  listView = (ListView) findViewById(R.id.listView1);
  accessWebService();
  onDetectConnected();
  registerCallClickBack();
 }

 public void onDetectConnected(){
     ConnectivityManager cm = (ConnectivityManager) context
             .getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
    boolean network_connected = activeNetwork != null
             && activeNetwork.isAvailable();
        if(!network_connected){
            onDetectNetworkState().show();
        }
 }

public AlertDialog onDetectNetworkState(){
AlertDialog.Builder builder1 = new AlertDialog.Builder(this);
builder1.setMessage("Εντοπίστηκε πρόβλημμα με τη σύνδεση στο διαδύκτιο. Παρακαλώ συνδεθήτε στο διαδύκτιο.")
.setTitle("Χωρίς σύνδεση δικτύου")
.setNegativeButton("Άκυρο",new DialogInterface.OnClickListener() {

    @Override
    public void onClick(DialogInterface dialog, int which) {
        // TODO Auto-generated method stub
        MainActivity.this.finish();
    }
})
.setPositiveButton("Οκ",new DialogInterface.OnClickListener() {

    @Override
    public void onClick(DialogInterface dialog, int which) {
        // TODO Auto-generated method stub
        startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));
    }
});
    return builder1.create();
}

 @Override
public void onBackPressed() {
    // TODO Auto-generated method stub
     onCreateDialogBack().show();
}
public AlertDialog onCreateDialogBack(){
     AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle(R.string.exit)
                .setMessage(R.string.exit_message)
                .setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        // TODO Auto-generated method stub
                        MainActivity.this.finish();
                    }
                })
                .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        // TODO Auto-generated method stub
                        dialog.cancel();
                    }
                });
        return builder.create();
}
private void registerCallClickBack() {
    // TODO Auto-generated method stub
    ListView list = (ListView)findViewById(R.id.listView1);
    list.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View viewClicked, int position,
                long id) {
            // TODO Auto-generated method stub
            String message = "Έχετε επιλέξει την " + id + "η μετοχή";
            Toast.makeText(MainActivity.this, message, Toast.LENGTH_SHORT).show();
        }
    });
}

@Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater().inflate(R.menu.main, menu);
  return true;
 }

 // Async Task to access the web
 private class JsonReadTask extends AsyncTask<String, Void, String> {
     @Override
     protected void onPreExecute() {
         super.onPreExecute();
         pDialog = new ProgressDialog(MainActivity.this);
         pDialog.setMessage("Γίνεται Λήψη μετοχών...");
         pDialog.setCancelable(false);
         pDialog.show();

     }
  @Override
  protected String doInBackground(String... params) {
   HttpClient httpclient = new DefaultHttpClient();
   HttpPost httppost = new HttpPost(params[0]);
   try {
    HttpResponse response = httpclient.execute(httppost);
    jsonResult = inputStreamToString(
      response.getEntity().getContent()).toString();
   }

   catch (ClientProtocolException e) {
    e.printStackTrace();
   } catch (IOException e) {
    e.printStackTrace();
   }
   return null;
  }

  private StringBuilder inputStreamToString(InputStream is) {
   String rLine = "";
   StringBuilder answer = new StringBuilder();
   BufferedReader rd = new BufferedReader(new InputStreamReader(is));

   try {
    while ((rLine = rd.readLine()) != null) {
     answer.append(rLine);
    }
   }

   catch (IOException e) {
    // e.printStackTrace();
    Toast.makeText(getApplicationContext(),
      "Error..." + e.toString(), Toast.LENGTH_LONG).show();
   }
   return answer;
  }

  @Override
  protected void onPostExecute(String result) {

   ListDrwaer();
   pDialog.dismiss();
  }

 }// end async task

 public void accessWebService() {
  JsonReadTask task = new JsonReadTask();
  // passes values for the urls string array
  task.execute(new String[] { url });
 }

 // build hash set for list view
 public void ListDrwaer() {
  List<Map<String, String>> stocksList = new ArrayList<Map<String, String>>();

  try {
   JSONObject jsonResponse = new JSONObject(jsonResult);
   JSONArray jsonMainNode = jsonResponse.optJSONArray("metoxes");

   for (int i = 0; i < jsonMainNode.length(); i++) {
    JSONObject jsonChildNode = jsonMainNode.getJSONObject(i);
    String name = jsonChildNode.optString("name");
    String number = jsonChildNode.optString("price");
    String id = jsonChildNode.optString("id");
    String outPut =id + ") " + name + " - " + number;
    stocksList.add(createStockList("metoxes", outPut));
   }

  } catch (JSONException e) {
   Toast.makeText(getApplicationContext(), "Error" + e.toString(),
     Toast.LENGTH_SHORT).show();
  }

  SimpleAdapter simpleAdapter = new SimpleAdapter(this, stocksList,
    android.R.layout.simple_list_item_1,
    new String[] { "metoxes" }, new int[] { android.R.id.text1 });
  listView.setAdapter(simpleAdapter);
 }

 private HashMap<String, String> createStockList(String name, String number) {
  HashMap<String, String> employeeNameNo = new HashMap<String, String>();
  employeeNameNo.put(name, number);

  return employeeNameNo;
 }
}

my manifest file is this...

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.ptuxiaki.stockpredictions"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="19" />
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher_stock"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.ptuxiaki.stockpredictions.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

from what it seems i have the problem here

01-30 07:10:19.463: E/AndroidRuntime(1720):     at com.ptuxiaki.stockpredictions.MainActivity.onDetectConnected(MainActivity.java:58)
01-30 07:10:19.463: E/AndroidRuntime(1720):     at com.ptuxiaki.stockpredictions.MainActivity.onCreate(MainActivity.java:53)

line 53 is:

onDetectConnected();

line 58 is:

ConnectivityManager cm = (ConnectivityManager) context
             .getSystemService(Context.CONNECTIVITY_SERVICE);
解决方案

remove

 private Activity context;

and everywhere when you are using it, also remove it. For instance change

 context.getSystemService(...

to just

  getSystemService(...

your MainActivity is already a Context, and that is what you need.You created context field, but is is null, and anyways that wont work since you need a context created by the systems. and that is what your activity is.

这篇关于检查是否其连接与否的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-20 11:58
查看更多