您好我正在开发一个Android应用程序来监控WCP网络的RSCP和ECNO,我尝试使用以下代码并且在构建期间没有错误但是当我在手机上运行应用程序时我遇到错误(Samsung Galaxcy Core Prime)。
守则:
public class SignalStrength extends ActionBarActivity {
TelephonyManager tManager;
PhoneStateListener pListener;
public static String LOG_TAG = "PhoneStateListener";
public TextView rs = (TextView) findViewById(R.id.rscp);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_signal_strength);
tManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
tManager.listen(pListener, PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_signal_strength, menu);
return true;
}
public void onSignalStrengthsChanged(CellSignalStrengthWcdma signalStrength) {
//super.onSignalStrengthsChanged(signalStrength);
Log.i(LOG_TAG, "onSignalStrengthsChanged" + signalStrength);
Log.i(LOG_TAG, "onSignalStrengthsChanged: getRscp" + signalStrength.getDbm());
int ttt = signalStrength.getDbm();
rs.setText(String.valueOf(ttt));
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
代码中是否有错误?
请提前帮助我解决这个问题。
新代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_signal_strength);
TextView textView = (TextView) findViewById(R.id.textView);
TelephonyManager telephonyManager = (TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);
GsmCellLocation cellLocation = (GsmCellLocation) telephonyManager.getCellLocation();
CellInfoWcdma cellinfoWcdma = null;
if(cellLocation!=null){
cellinfoWcdma = (CellInfoWcdma)telephonyManager.getAllCellInfo().get(0);
CellSignalStrengthWcdma cellSignalStrengthWcdma = cellinfoWcdma.getCellSignalStrength();
if(Build.VERSION.SDK_INT>=18){
cellSignalStrengthWcdma.getDbm();
int ttt = cellSignalStrengthWcdma.getDbm();
//int cid = cellLocation.getPsc();
textView.setText(String.valueOf(ttt));
}
}
}
新的调试日志:
> 03-15 22:13:21.710 15005-15005/com.asiacell.signalstrength
> D/dalvikvm﹕ Late-enabling CheckJNI 03-15 22:13:21.770
> 15005-15005/com.asiacell.signalstrength D/ActivityThread﹕
> handleBindApplication:com.asiacell.signalstrength 03-15 22:13:21.800
> 15005-15005/com.asiacell.signalstrength W/ApplicationPackageManager﹕
> getCSCPackageItemText() 03-15 22:13:21.800
> 15005-15005/com.asiacell.signalstrength D/DisplayManager﹕
> DisplayManager() 03-15 22:13:21.830
> 15005-15005/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.view.ViewGroup.onNestedScrollAccepted, referenced from
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.onNestedScrollAccepted
> 03-15 22:13:21.830 15005-15005/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 11348:
> Landroid/view/ViewGroup;.onNestedScrollAccepted
> (Landroid/view/View;Landroid/view/View;I)V 03-15 22:13:21.830
> 15005-15005/com.asiacell.signalstrength D/dalvikvm﹕ VFY: replacing
> opcode 0x6f at 0x0000 03-15 22:13:21.830
> 15005-15005/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.view.ViewGroup.onStopNestedScroll, referenced from
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.onStopNestedScroll
> 03-15 22:13:21.830 15005-15005/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 11354:
> Landroid/view/ViewGroup;.onStopNestedScroll (Landroid/view/View;)V
> 03-15 22:13:21.830 15005-15005/com.asiacell.signalstrength
> D/dalvikvm﹕ VFY: replacing opcode 0x6f at 0x0000 03-15 22:13:21.830
> 15005-15005/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.stopNestedScroll,
> referenced from method
> android.support.v7.internal.widget.ActionBarOverlayLayout.setHideOnContentScrollEnabled 03-15 22:13:21.830 15005-15005/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 9039:
> Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.stopNestedScroll
> ()V 03-15 22:13:21.830 15005-15005/com.asiacell.signalstrength
> D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x000e 03-15 22:13:21.840
> 15005-15005/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.content.res.TypedArray.getChangingConfigurations,
> referenced from method
> android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations
> 03-15 22:13:21.840 15005-15005/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 364:
> Landroid/content/res/TypedArray;.getChangingConfigurations ()I 03-15
> 22:13:21.840 15005-15005/com.asiacell.signalstrength D/dalvikvm﹕ VFY:
> replacing opcode 0x6e at 0x0002 03-15 22:13:21.840
> 15005-15005/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.content.res.TypedArray.getType, referenced from method
> android.support.v7.internal.widget.TintTypedArray.getType 03-15
> 22:13:21.840 15005-15005/com.asiacell.signalstrength W/dalvikvm﹕ VFY:
> unable to resolve virtual method 386:
> Landroid/content/res/TypedArray;.getType (I)I 03-15 22:13:21.840
> 15005-15005/com.asiacell.signalstrength D/dalvikvm﹕ VFY: replacing
> opcode 0x6e at 0x0002 03-15 22:13:21.940
> 15005-15005/com.asiacell.signalstrength D/OpenGLRenderer﹕ Enabling
> debug mode 0 03-15 22:13:21.990
> 15005-15005/com.asiacell.signalstrength I/Timeline﹕ Timeline:
> Activity_idle id: android.os.BinderProxy@41eedeb8 time:95899927 03-15
> 22:14:02.329 15081-15081/com.asiacell.signalstrength D/dalvikvm﹕
> Late-enabling CheckJNI 03-15 22:14:02.379
> 15081-15081/com.asiacell.signalstrength D/ActivityThread﹕
> handleBindApplication:com.asiacell.signalstrength 03-15 22:14:02.409
> 15081-15081/com.asiacell.signalstrength W/ApplicationPackageManager﹕
> getCSCPackageItemText() 03-15 22:14:02.409
> 15081-15081/com.asiacell.signalstrength D/DisplayManager﹕
> DisplayManager() 03-15 22:14:02.439
> 15081-15081/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.view.ViewGroup.onNestedScrollAccepted, referenced from
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.onNestedScrollAccepted
> 03-15 22:14:02.439 15081-15081/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 11350:
> Landroid/view/ViewGroup;.onNestedScrollAccepted
> (Landroid/view/View;Landroid/view/View;I)V 03-15 22:14:02.439
> 15081-15081/com.asiacell.signalstrength D/dalvikvm﹕ VFY: replacing
> opcode 0x6f at 0x0000 03-15 22:14:02.439
> 15081-15081/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.view.ViewGroup.onStopNestedScroll, referenced from
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.onStopNestedScroll
> 03-15 22:14:02.439 15081-15081/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 11356:
> Landroid/view/ViewGroup;.onStopNestedScroll (Landroid/view/View;)V
> 03-15 22:14:02.439 15081-15081/com.asiacell.signalstrength
> D/dalvikvm﹕ VFY: replacing opcode 0x6f at 0x0000 03-15 22:14:02.449
> 15081-15081/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.stopNestedScroll,
> referenced from method
> android.support.v7.internal.widget.ActionBarOverlayLayout.setHideOnContentScrollEnabled 03-15 22:14:02.449 15081-15081/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 9039:
> Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.stopNestedScroll
> ()V 03-15 22:14:02.449 15081-15081/com.asiacell.signalstrength
> D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x000e 03-15 22:14:02.449
> 15081-15081/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.content.res.TypedArray.getChangingConfigurations,
> referenced from method
> android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations
> 03-15 22:14:02.449 15081-15081/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 364:
> Landroid/content/res/TypedArray;.getChangingConfigurations ()I 03-15
> 22:14:02.449 15081-15081/com.asiacell.signalstrength D/dalvikvm﹕ VFY:
> replacing opcode 0x6e at 0x0002 03-15 22:14:02.449
> 15081-15081/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.content.res.TypedArray.getType, referenced from method
> android.support.v7.internal.widget.TintTypedArray.getType 03-15
> 22:14:02.449 15081-15081/com.asiacell.signalstrength W/dalvikvm﹕ VFY:
> unable to resolve virtual method 386:
> Landroid/content/res/TypedArray;.getType (I)I 03-15 22:14:02.449
> 15081-15081/com.asiacell.signalstrength D/dalvikvm﹕ VFY: replacing
> opcode 0x6e at 0x0002 03-15 22:14:02.499
> 15081-15081/com.asiacell.signalstrength D/AndroidRuntime﹕ Shutting
> down VM 03-15 22:14:02.499 15081-15081/com.asiacell.signalstrength
> W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception
> (group=0x416ebbc0) 03-15 22:14:02.509
> 15081-15081/com.asiacell.signalstrength E/AndroidRuntime﹕ FATAL
> EXCEPTION: main
> Process: com.asiacell.signalstrength, PID: 15081
> java.lang.RuntimeException: Unable to start activity ComponentInfo{com.asiacell.signalstrength/com.asiacell.signalstrength.SignalStrength}:
> java.lang.NullPointerException
> at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2327)
> at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2378)
> at android.app.ActivityThread.access$800(ActivityThread.java:155)
> at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1244)
> at android.os.Handler.dispatchMessage(Handler.java:102)
> at android.os.Looper.loop(Looper.java:136)
> at android.app.ActivityThread.main(ActivityThread.java:5433)
> at java.lang.reflect.Method.invokeNative(Native Method)
> at java.lang.reflect.Method.invoke(Method.java:515)
> at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268)
> at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084)
> at dalvik.system.NativeStart.main(Native Method)
> Caused by: java.lang.NullPointerException
> at com.asiacell.signalstrength.SignalStrength.onCreate(SignalStrength.java:32)
> at android.app.Activity.performCreate(Activity.java:5301)
> at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
> at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2291)
> at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2378)
> at android.app.ActivityThread.access$800(ActivityThread.java:155)
> at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1244)
> at android.os.Handler.dispatchMessage(Handler.java:102)
> at android.os.Looper.loop(Looper.java:136)
> at android.app.ActivityThread.main(ActivityThread.java:5433)
> at java.lang.reflect.Method.invokeNative(Native Method)
> at java.lang.reflect.Method.invoke(Method.java:515)
> at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268)
> at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084)
> at dalvik.system.NativeStart.main(Native Method) 03-15 22:17:02.385 15297-15297/com.asiacell.signalstrength
> D/ActivityThread﹕ handleBindApplication:com.asiacell.signalstrength
> 03-15 22:17:02.415 15297-15297/com.asiacell.signalstrength
> W/ApplicationPackageManager﹕ getCSCPackageItemText() 03-15
> 22:17:02.425 15297-15297/com.asiacell.signalstrength
> D/DisplayManager﹕ DisplayManager() 03-15 22:17:02.455
> 15297-15297/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.view.ViewGroup.onNestedScrollAccepted, referenced from
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.onNestedScrollAccepted
> 03-15 22:17:02.455 15297-15297/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 11348:
> Landroid/view/ViewGroup;.onNestedScrollAccepted
> (Landroid/view/View;Landroid/view/View;I)V 03-15 22:17:02.455
> 15297-15297/com.asiacell.signalstrength D/dalvikvm﹕ VFY: replacing
> opcode 0x6f at 0x0000 03-15 22:17:02.455
> 15297-15297/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.view.ViewGroup.onStopNestedScroll, referenced from
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.onStopNestedScroll
> 03-15 22:17:02.455 15297-15297/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 11354:
> Landroid/view/ViewGroup;.onStopNestedScroll (Landroid/view/View;)V
> 03-15 22:17:02.455 15297-15297/com.asiacell.signalstrength
> D/dalvikvm﹕ VFY: replacing opcode 0x6f at 0x0000 03-15 22:17:02.465
> 15297-15297/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.stopNestedScroll,
> referenced from method
> android.support.v7.internal.widget.ActionBarOverlayLayout.setHideOnContentScrollEnabled 03-15 22:17:02.465 15297-15297/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 9039:
> Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.stopNestedScroll
> ()V 03-15 22:17:02.465 15297-15297/com.asiacell.signalstrength
> D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x000e 03-15 22:17:02.465
> 15297-15297/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.content.res.TypedArray.getChangingConfigurations,
> referenced from method
> android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations
> 03-15 22:17:02.465 15297-15297/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 364:
> Landroid/content/res/TypedArray;.getChangingConfigurations ()I 03-15
> 22:17:02.465 15297-15297/com.asiacell.signalstrength D/dalvikvm﹕ VFY:
> replacing opcode 0x6e at 0x0002 03-15 22:17:02.465
> 15297-15297/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.content.res.TypedArray.getType, referenced from method
> android.support.v7.internal.widget.TintTypedArray.getType 03-15
> 22:17:02.465 15297-15297/com.asiacell.signalstrength W/dalvikvm﹕ VFY:
> unable to resolve virtual method 386:
> Landroid/content/res/TypedArray;.getType (I)I 03-15 22:17:02.465
> 15297-15297/com.asiacell.signalstrength D/dalvikvm﹕ VFY: replacing
> opcode 0x6e at 0x0002 03-15 22:17:02.585
> 15297-15297/com.asiacell.signalstrength D/OpenGLRenderer﹕ Enabling
> debug mode 0 03-15 22:17:02.645
> 15297-15297/com.asiacell.signalstrength I/Timeline﹕ Timeline:
> Activity_idle id: android.os.BinderProxy@41ef2ad8 time:96120583 03-15
> 22:17:54.546 15370-15370/com.asiacell.signalstrength
> D/ActivityThread﹕ handleBindApplication:com.asiacell.signalstrength
> 03-15 22:17:54.576 15370-15370/com.asiacell.signalstrength
> W/ApplicationPackageManager﹕ getCSCPackageItemText() 03-15
> 22:17:54.576 15370-15370/com.asiacell.signalstrength
> D/DisplayManager﹕ DisplayManager() 03-15 22:17:54.606
> 15370-15370/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.view.ViewGroup.onNestedScrollAccepted, referenced from
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.onNestedScrollAccepted
> 03-15 22:17:54.606 15370-15370/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 11348:
> Landroid/view/ViewGroup;.onNestedScrollAccepted
> (Landroid/view/View;Landroid/view/View;I)V 03-15 22:17:54.606
> 15370-15370/com.asiacell.signalstrength D/dalvikvm﹕ VFY: replacing
> opcode 0x6f at 0x0000 03-15 22:17:54.606
> 15370-15370/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.view.ViewGroup.onStopNestedScroll, referenced from
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.onStopNestedScroll
> 03-15 22:17:54.606 15370-15370/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 11354:
> Landroid/view/ViewGroup;.onStopNestedScroll (Landroid/view/View;)V
> 03-15 22:17:54.606 15370-15370/com.asiacell.signalstrength
> D/dalvikvm﹕ VFY: replacing opcode 0x6f at 0x0000 03-15 22:17:54.606
> 15370-15370/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.stopNestedScroll,
> referenced from method
> android.support.v7.internal.widget.ActionBarOverlayLayout.setHideOnContentScrollEnabled 03-15 22:17:54.606 15370-15370/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 9039:
> Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.stopNestedScroll
> ()V 03-15 22:17:54.606 15370-15370/com.asiacell.signalstrength
> D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x000e 03-15 22:17:54.616
> 15370-15370/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.content.res.TypedArray.getChangingConfigurations,
> referenced from method
> android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations
> 03-15 22:17:54.616 15370-15370/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 364:
> Landroid/content/res/TypedArray;.getChangingConfigurations ()I 03-15
> 22:17:54.616 15370-15370/com.asiacell.signalstrength D/dalvikvm﹕ VFY:
> replacing opcode 0x6e at 0x0002 03-15 22:17:54.616
> 15370-15370/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.content.res.TypedArray.getType, referenced from method
> android.support.v7.internal.widget.TintTypedArray.getType 03-15
> 22:17:54.616 15370-15370/com.asiacell.signalstrength W/dalvikvm﹕ VFY:
> unable to resolve virtual method 386:
> Landroid/content/res/TypedArray;.getType (I)I 03-15 22:17:54.616
> 15370-15370/com.asiacell.signalstrength D/dalvikvm﹕ VFY: replacing
> opcode 0x6e at 0x0002 03-15 22:17:54.716
> 15370-15370/com.asiacell.signalstrength D/OpenGLRenderer﹕ Enabling
> debug mode 0 03-15 22:17:54.766
> 15370-15370/com.asiacell.signalstrength I/Timeline﹕ Timeline:
> Activity_idle id: android.os.BinderProxy@41ee7198 time:96172707 03-15
> 22:24:10.483 15519-15519/com.asiacell.signalstrength
> D/ActivityThread﹕ handleBindApplication:com.asiacell.signalstrength
> 03-15 22:24:10.513 15519-15519/com.asiacell.signalstrength
> W/ApplicationPackageManager﹕ getCSCPackageItemText() 03-15
> 22:24:10.513 15519-15519/com.asiacell.signalstrength
> D/DisplayManager﹕ DisplayManager() 03-15 22:24:10.543
> 15519-15519/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.view.ViewGroup.onNestedScrollAccepted, referenced from
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.onNestedScrollAccepted
> 03-15 22:24:10.543 15519-15519/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 11350:
> Landroid/view/ViewGroup;.onNestedScrollAccepted
> (Landroid/view/View;Landroid/view/View;I)V 03-15 22:24:10.543
> 15519-15519/com.asiacell.signalstrength D/dalvikvm﹕ VFY: replacing
> opcode 0x6f at 0x0000 03-15 22:24:10.543
> 15519-15519/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.view.ViewGroup.onStopNestedScroll, referenced from
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.onStopNestedScroll
> 03-15 22:24:10.543 15519-15519/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 11356:
> Landroid/view/ViewGroup;.onStopNestedScroll (Landroid/view/View;)V
> 03-15 22:24:10.543 15519-15519/com.asiacell.signalstrength
> D/dalvikvm﹕ VFY: replacing opcode 0x6f at 0x0000 03-15 22:24:10.553
> 15519-15519/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method
> android.support.v7.internal.widget.ActionBarOverlayLayout.stopNestedScroll,
> referenced from method
> android.support.v7.internal.widget.ActionBarOverlayLayout.setHideOnContentScrollEnabled 03-15 22:24:10.553 15519-15519/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 9039:
> Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.stopNestedScroll
> ()V 03-15 22:24:10.553 15519-15519/com.asiacell.signalstrength
> D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x000e 03-15 22:24:10.553
> 15519-15519/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.content.res.TypedArray.getChangingConfigurations,
> referenced from method
> android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations
> 03-15 22:24:10.553 15519-15519/com.asiacell.signalstrength
> W/dalvikvm﹕ VFY: unable to resolve virtual method 364:
> Landroid/content/res/TypedArray;.getChangingConfigurations ()I 03-15
> 22:24:10.553 15519-15519/com.asiacell.signalstrength D/dalvikvm﹕ VFY:
> replacing opcode 0x6e at 0x0002 03-15 22:24:10.553
> 15519-15519/com.asiacell.signalstrength I/dalvikvm﹕ Could not find
> method android.content.res.TypedArray.getType, referenced from method
> android.support.v7.internal.widget.TintTypedArray.getType 03-15
> 22:24:10.553 15519-15519/com.asiacell.signalstrength W/dalvikvm﹕ VFY:
> unable to resolve virtual method 386:
> Landroid/content/res/TypedArray;.getType (I)I 03-15 22:24:10.553
> 15519-15519/com.asiacell.signalstrength D/dalvikvm﹕ VFY: replacing
> opcode 0x6e at 0x0002 03-15 22:24:10.613
> 15519-15519/com.asiacell.signalstrength D/AndroidRuntime﹕ Shutting
> down VM 03-15 22:24:10.613 15519-15519/com.asiacell.signalstrength
> W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception
> (group=0x416ebbc0) 03-15 22:24:10.613
> 15519-15519/com.asiacell.signalstrength E/AndroidRuntime﹕ FATAL
> EXCEPTION: main
> Process: com.asiacell.signalstrength, PID: 15519
> java.lang.RuntimeException: Unable to start activity ComponentInfo{com.asiacell.signalstrength/com.asiacell.signalstrength.SignalStrength}:
> java.lang.NullPointerException
> at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2327)
> at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2378)
> at android.app.ActivityThread.access$800(ActivityThread.java:155)
> at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1244)
> at android.os.Handler.dispatchMessage(Handler.java:102)
> at android.os.Looper.loop(Looper.java:136)
> at android.app.ActivityThread.main(ActivityThread.java:5433)
> at java.lang.reflect.Method.invokeNative(Native Method)
> at java.lang.reflect.Method.invoke(Method.java:515)
> at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268)
> at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084)
> at dalvik.system.NativeStart.main(Native Method)
> Caused by: java.lang.NullPointerException
> at com.asiacell.signalstrength.SignalStrength.onCreate(SignalStrength.java:32)
> at android.app.Activity.performCreate(Activity.java:5301)
> at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
> at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2291)
> at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2378)
> at android.app.ActivityThread.access$800(ActivityThread.java:155)
> at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1244)
> at android.os.Handler.dispatchMessage(Handler.java:102)
> at android.os.Looper.loop(Looper.java:136)
> at android.app.ActivityThread.main(ActivityThread.java:5433)
> at java.lang.reflect.Method.invokeNative(Native Method)
> at java.lang.reflect.Method.invoke(Method.java:515)
> at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268)
> at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084)
> at dalvik.system.NativeStart.main(Native Method)
答案 0 :(得分:1)
为了获得WCDMA信号强度,您可以使用以下代码:
TelephonyManager telephonyManager = (TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);
List<CellInfo> cellList = telephonyManager.getAllCellInfo();
CellInfoWcdma cellinfoWcdma = null;
if(cellList!=null && !cellList.isEmpty()){
cellinfoWcdma = (CellInfoWcdma)telephonyManager.getAllCellInfo().get(0);
CellSignalStrengthWcdma cellSignalStrengthWcdma = cellinfoWcdma.getCellSignalStrength();
if(Build.VERSION.SDK_INT>=18){
cellSignalStrengthWcdma.getDbm();
}
}
请注意,getDbm()
方法仅适用于API 18及以上版本。
编辑:您还需要在Manifest.xml文件中添加以下权限:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />