- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是一名新的Android程序员,最近,当我将Sdk版本设置为26或更高版本时,我的项目在运行android 8和android 9的设备上出现此崩溃。这是我的崩溃日志:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test.westland/com.htmlchrome.MainActivity}: android.view.InflateException: Binary XML file line #10: Binary XML file line #10: Error inflating class org.xwalk.core.XWalkView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2816)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2894)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1615)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:176)
at android.app.ActivityThread.main(ActivityThread.java:6652)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
Caused by: android.view.InflateException: Binary XML file line #10: Binary
XML file line #10: Error inflating class org.xwalk.core.XWalkView
Caused by: android.view.InflateException: Binary XML file line #10: Error
inflating class org.xwalk.core.XWalkView
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance0(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:334)
at android.view.LayoutInflater.createView(LayoutInflater.java:651)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:794)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:734)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:867)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:828)
at android.view.LayoutInflater.inflate(LayoutInflater.java:519)
at android.view.LayoutInflater.inflate(LayoutInflater.java:427)
at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:256)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109)
at com.htmlchrome.MainActivity.onCreate(MainActivity.java:164)
at android.app.Activity.performCreate(Activity.java:7084)
at android.app.Activity.performCreate(Activity.java:7075)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1215)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2769)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2894)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1615)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:176)
at android.app.ActivityThread.main(ActivityThread.java:6652)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
Caused by: java.lang.RuntimeException: java.lang.SecurityException:
Permission Denial: opening provider
com.android.providers.contacts.ContactsProvider2 from ProcessRecord{f41086b
13155:com.cowboygunfighter.westland/u0a160} (pid=13155, uid=10160) requires
android.permission.READ_CONTACTS or android.permission.WRITE_CONTACTS
at org.xwalk.core.ReflectConstructor.newInstance(ReflectConstructor.java:54)
at org.xwalk.core.XWalkView.reflectionInit(XWalkView.java:788)
at org.xwalk.core.XWalkView.<init>(XWalkView.java:221)
... 26 more
Caused by: java.lang.SecurityException: Permission Denial: opening provider
com.android.providers.contacts.ContactsProvider2 from ProcessRecord{f41086b
13155:com.cowboygunfighter.westland/u0a160} (pid=13155, uid=10160) requires
android.permission.READ_CONTACTS or android.permission.WRITE_CONTACTS
at android.os.Parcel.readException(Parcel.java:2005)
at android.os.Parcel.readException(Parcel.java:1951)
at android.content.IContentService$Stub$Proxy.registerContentObserver(IContentService.java:768)
at android.content.ContentResolver.registerContentObserver(ContentResolver.java:1940)
at android.content.ContentResolver.registerContentObserver(ContentResolver.java:1929)
at org.xwalk.core.internal.extension.api.contacts.Contacts.<init>(Contacts.java:42)
at org.xwalk.core.internal.extension.BuiltinXWalkExtensions.load(BuiltinXWalkExtensions.java:62)
at org.xwalk.core.internal.XWalkViewInternal.initXWalkContent(XWalkViewInternal.java:365)
at org.xwalk.core.internal.XWalkViewInternal.<init>(XWalkViewInternal.java:253)
at org.xwalk.core.internal.XWalkViewBridge.<init>(XWalkViewBridge.java:57)
at java.lang.reflect.Constructor.newInstance0(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:334)
at org.xwalk.core.ReflectConstructor.newInstance(ReflectConstructor.java:48)
... 28 more
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="18" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize"
android:screenOrientation="landscape">
</activity>
<activity
android:name=".SplashActivity"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.chartboost.sdk.CBImpressionActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:excludeFromRecents="true"
android:hardwareAccelerated="true"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
<activity
android:name="com.vungle.publisher.FullScreenAdActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<activity
android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />
</application>
<!-- Base application theme. -->
<style name="SelectPopupDialog">
<item name="select_dialog_singlechoice">@android:layout/select_dialog_singlechoice</item>
<item name="select_dialog_multichoice">@android:layout/select_dialog_multichoice</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="SelectActionMenuShare">
<item name="android:icon">@drawable/ic_menu_share_holo_light</item>
</style>
<style name="SelectActionMenuWebSearch">
<item name="android:icon">@drawable/ic_search</item>
</style>
</resources>
package com.htmlchrome;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import com.chartboost.sdk.Chartboost;
import com.chartboost.sdk.CBLocation;
import com.chartboost.sdk.ChartboostDelegate;
import com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdRequest.Builder;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.InterstitialAd;
import com.vungle.publisher.VunglePub;
import org.xwalk.core.JavascriptInterface;
import org.xwalk.core.XWalkView;
public class MainActivity extends AppCompatActivity {
private AdView adView;
private InterstitialAd admobExit;
private InterstitialAd interstitialAd;
private String link = "";
private boolean showAdmobExit = false;
private String url_offline = "file:///android_asset/www/index.html";
private String url_online = "";
private final VunglePub vunglePub = VunglePub.getInstance();
private XWalkView webview;
private class JSInterface {
private InterstitialAd admob;
class C05181 implements Runnable {
C05181() {
}
public void run() {
JSInterface.this.admob.loadAd(new Builder().build());
Log.e("RUN:", "loadAdmobFull");
}
}
class C05192 implements Runnable {
C05192() {
}
public void run() {
JSInterface.this.admob.show();
}
}
class C05214 implements Runnable {
C05214() {
}
public void run() {
Chartboost.showInterstitial(CBLocation.LOCATION_DEFAULT);
}
}
class C05225 implements Runnable {
C05225() {
}
public void run() {
Chartboost.showInterstitial(CBLocation.LOCATION_DEFAULT);
}
}
class C05236 implements Runnable {
C05236() {
}
public void run() {
MainActivity.this.adView.setVisibility(0);
MainActivity.this.adView.loadAd(new Builder().build());
}
}
class C05247 implements Runnable {
C05247() {
}
public void run() {
MainActivity.this.adView.setVisibility(8);
}
}
class C05258 implements Runnable {
C05258() {
}
public void run() {
MainActivity.this.vunglePub.playAd();
}
}
public JSInterface() {
this.admob = new InterstitialAd(MainActivity.this);
this.admob.setAdUnitId(MainActivity.this.getString(R.string.admob_full));
}
@JavascriptInterface
public void loadAdmobFull() {
MainActivity.this.runOnUiThread(new C05181());
}
@JavascriptInterface
public void showAdmobFull() {
MainActivity.this.runOnUiThread(new C05192());
}
@JavascriptInterface
public void showAdmobFullOnExit(final boolean isShow) {
MainActivity.this.runOnUiThread(new Runnable() {
public void run() {
MainActivity.this.showAdmobExit = isShow;
}
});
}
@JavascriptInterface
public void loadChartboot() {
MainActivity.this.runOnUiThread(new C05214());
}
@JavascriptInterface
public void showChartBoot() {
MainActivity.this.runOnUiThread(new C05225());
}
@JavascriptInterface
public void showAdmobBanner() {
MainActivity.this.runOnUiThread(new C05236());
}
@JavascriptInterface
public void hideAdmobBanner() {
MainActivity.this.runOnUiThread(new C05247());
}
@JavascriptInterface
public void showVungle() {
MainActivity.this.runOnUiThread(new C05258());
}
}
class C10261 extends AdListener {
C10261() {
}
public void onAdLoaded() {
if (MainActivity.this.interstitialAd.isLoaded()) {
MainActivity.this.interstitialAd.show();
}
}
public void onAdOpened() {
}
public void onAdFailedToLoad(int errorCode) {
}
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView((int) R.layout.activity_main);
this.webview = (XWalkView) findViewById(R.id.webview);
this.adView = (AdView) findViewById(R.id.adView);
this.vunglePub.init(this, getString(R.string.vungle_id));
this.interstitialAd = new InterstitialAd(this);
this.interstitialAd.setAdUnitId(getString(R.string.admob_full));
this.interstitialAd.loadAd(new Builder().build());
this.interstitialAd.setAdListener(new C10261());
this.link = getString(R.string.link);
this.webview.addJavascriptInterface(new JSInterface(), "JSInterface");
this.webview.load(this.link, null);
Chartboost.startWithAppId(this, getString(R.string.chartboot_id), getString(R.string.chartboot_sign));
Chartboost.onCreate(this);
Chartboost.onStart(this);
this.admobExit = new InterstitialAd(this);
this.admobExit.setAdUnitId(getString(R.string.admob_full));
this.admobExit.loadAd(new Builder().build());
}
@Override
public void onStart() {
super.onStart();
Chartboost.startWithAppId(this, getString(R.string.chartboot_id), getString(R.string.chartboot_sign));
Chartboost.onStart(this);
}
@Override
public void onResume() {
super.onResume();
Chartboost.onResume(this);
}
@Override
public void onPause() {
super.onPause();
Chartboost.onPause(this);
}
@Override
public void onStop() {
super.onStop();
Chartboost.onStop(this);
}
@Override
public void onDestroy() {
super.onDestroy();
Chartboost.onDestroy(this);
}
最佳答案
我来帮助您一点点帮助。错误可能来自旧的人行横道插件,人行横道项目已被取消多年,他们不再更新了。有2种方法:切换到另一个html5库,也许是phonegap或尝试更新到最新版本。
关于android - 目标SDK版本26或更高版本崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52388337/
我有一个 DIV #page,如果我在顶部添加边距,突然出现一个滚动条,即使该元素不大于主体。我怎样才能去掉滚动条? (参见 Fiddle) 我的 HTML I am a div siz
function getClosestValue(standardArray, targetVal) { standardArray = standardArray.sort(function(a,
我有 318x424 的书籍封面图片,我想做的是指定一张图片,并在其下方添加一个文本链接。初始 src 是 about:blank,这样如果响应式设计不显示框架,它就不会占用用户带宽。 框架的 HTM
我被这个问题困了两天了,还是没搞定。 基本上,我有一个二维数组,其中包含某些数字(在给定范围内)之间的关系: 0 = 顺序无关紧要 1 = 第一个数字(左栏中的数字)应该是第一个 2 = 第二个数字(
只有当我在更高的 API 上进行调试时,我才会强制关闭脚本:16,但是当涉及到 API 时它工作正常:10。这可能是我的项目设置问题吗? 这是对服务器的简单请求,以获取 fragment 中的类别列表
给定下表books id | listorder ----+----------- 3 | 1 2 | 2 1 | 3 4 |
我想要那个密码切换功能,好像TextInputLayout有这个功能,而不是 TextInputEditText .但是正如您在下面的代码中看到的,即使我将高度设置为 wrap_content和 ap
似乎从 读取给出空列表,它主要发生在延迟较高的网络上的主机上。是否有更强大的与远程主机交互的方式? use Net::SSH2; # my $ssh = Net::SSH2->new(); # ..
为了在 Play 商店中发布我的应用程序,我必须将 TargetSdkVersion 从 23 更改为 26。在我更改它之前,该应用程序运行良好!现在应用程序在启动时崩溃。我想通了,问题出在这两行:
我尝试了很多解决方案,但找不到一个。我有 3 个不同的列,其中包含不同类型的文本,我需要它们具有相同的高度。但它们是这样不同的:colums有人可以帮忙吗? 代码: .col-sm-2{
我尝试将一个 div 相对于其具有负顶值的父级定位。这工作正常,现在的问题是这个 div,即使它有一个负的 top 值也会使父 div 更大。 我该怎么做才能让父 div 不那么大? Here's a
这是一个一般性问题,可能适用于任何给定的语言,如 C、C++、Java 等。 我认为无论以何种方式实现它,都不会比使用 2 个循环更高效,后者的效率为 n^2。 for(i=0;i O(1) ),要么
我需要查找所有有订单的家庭。我根本不关心订单的数据,只关心它的存在。 (使用 SQL Server) 这样说是不是更有效率: SELECT HouseholdID, LastName, FirstNa
我有一个 UINavigationController,在屏幕顶部有一个 UINavigationBar,在底部有一个 UIToolbar。我想让工具栏高一点。这是我的代码: CGRect toolb
我正在使用自定义字体。该字体在我的 Windows PC 上完美运行,但在我的 Mac (Yosemite OSX) 上运行不佳。正如您在图片中看到的,Mac 上的字体比 Windows 上的字体稍大
我正在尝试使用 FaSTLane 将我的应用程序作为 alpha 版本部署到 Play 商店,但出现此错误: Google Api 错误:multiApkShadowedActiveApk:任何设备都
我在这里找不到神奇的调味料。看起来 API 不支持它,所以我想我正在寻找一些 CSS 来使 slider 更大。 我得到的是左边的,但我想把它设计成右边的样子?任何 CSS 技巧或以前有人这样做过。
如果我运行这段代码: float a=1.123456789; printf("The float value is %f\n",a); double b=1.123456789876543 prin
我正在尝试使用 strip binary 来剥离我的目标文件。我在 gcc-7 上构建了最新的 binutils,但我的代码库使用 gcc-4.9.2。Binutils 是为 64 位架构构建的,我的
有没有办法让 iPhone 应用的“内容”区域感知到更大的导航栏? 类似这些问题: iOS: Adding a fixed image just below the navigation bar iO
我是一名优秀的程序员,十分优秀!