[英]how to resolve this error "com.android.internal.telephony cannot be resolved to a type" in android
[英]Telephony cannot be resolved
我在BroadcastReceiver中使用了此代碼,但此處無法解決電話問題。 如何在BroadcastReceiver中使用Telephony? 我認為這是因為在BroadcastReceiver中使用了它。
public class SmsFilter extends BroadcastReceiver {
SharedPreferences preferences = null ;
Context context;
static ContentResolver ctx;
String text;
@Override
public void onReceive(final Context context, Intent intent) {
if(android.os.Build.VERSION.SDK_INT>= 4.0){
Log.i("LOG", "this is: "+Build.VERSION.RELEASE);
final String myPackageName = context.getPackageName();
if (!Telephony.Sms.getDefaultSmsPackage(this).equals(myPackageName)) {
// App is not default.
// Show the "not currently set as the default SMS app" interface
View viewGroup = findViewById(R.id.not_default_app);
viewGroup.setVisibility(View.VISIBLE);
// Set up a button that allows the user to change the default SMS app
Button button = (Button) findViewById(R.id.change_default_app);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent intent =
new Intent(Telephony.Sms.Intents.ACTION_CHANGE_DEFAULT);
intent.putExtra(Telephony.Sms.Intents.EXTRA_PACKAGE_NAME,
myPackageName);
context.startActivity(intent);
}
});
} else {
// App is the default.
// Hide the "not currently set as the default SMS app" interface
View viewGroup = findViewById(R.id.not_default_app);
viewGroup.setVisibility(View.GONE);
}
}}}
代替Telephony.Sms.getDefaultSmsPackage(this)
您需要Telephony.Sms.getDefaultSmsPackage(context)
。 在您的情況下, this
是指BroadcastReceiver
,並且該方法需要一個context
參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.