错误的是:
所有com.android.support库必须使用相同的版本规格(混合版本可能会导致运行时崩溃)。发现版本28.0.0,26.1.0。
这些都是依赖和appcompact视图下设红线
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.google.android.gms:play-services-ads:16.0.0'
}
主要Activity.Java代码
package com.example.agecalculatorpro;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.MobileAds;
import android.app.DatePickerDialog;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.TextView;
import java.util.Calendar;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
Button btn1;
EditText age;
TextView result;
private AdView mAdView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MobileAds.initialize(this,
"ca-app-pub-3940256099942544~3347511713");
mAdView = findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
btn1 = (Button) findViewById(R.id.btn1);
age = (EditText) findViewById(R.id.age);
result = (TextView) findViewById(R.id.result);
btn1.setOnClickListener(this);
}
@Override
public void onClick(View v)
{
String Input_year = age.getText().toString();
result.setVisibility(View.VISIBLE);
if(Integer.parseInt(Input_year) < 2017)
{
Calendar calendar = Calendar.getInstance();
int current_year = calendar.get(calendar.YEAR);
int current_age = current_year - Integer.parseInt(Input_year);
result.setText("Your Age is: " + current_age);
}
else
{
result.setText("Please Enter Correct Year");
}
}
}
该应用程序或者在崩溃保持或不编译的。不同的行为在不同的AVD。
这个问题在进入AdMob订单后开始:实行“com.google.android.gms:发挥服务的广告:16.0.0” 17版也显示出同样的错误。 AdMob应用之前用来运行良好。
我该怎么办?
此能够容易地固定:
implementation ("com.google.android.gms:play-services-ads:17.1.3") {
exclude group: "com.android.support"
}
没关系...只是选择我擦的AVD的数据,现在他们正常运行。对于程序兼容性红线是因为它是,但应用程序仍然运行。