识字粗堪供赋役,不须辛苦慕公卿。这篇文章主要讲述在android加载布局时出现了一些错误,但在运行时没有效果相关的知识,希望能为你提供帮助。
所以,这是我得到的logcat信息。应用程序仍然可以运行,但我想知道我收到此错误的原因。我不明白为什么我这样,所以我甚至不知道该怎么问。
09-26 07:13:33.51018533-18533/com.gongxxing.gongxxing0921 D/AccessibilityManager﹕ setStateLocked: wasEnabled = false, mIsEnabled = false, wasTouchExplorationEnabled = false, mIsTouchExplorationEnabled = false, wasHighTextContrastEnabled = false, mIsHighTextContrastEnabled = false
java.lang.Throwable: setStateLocked
at android.view.accessibility.AccessibilityManager.setStateLocked(AccessibilityManager.java:553)
at android.view.accessibility.AccessibilityManager.tryConnectToServiceLocked(AccessibilityManager.java:636)
at android.view.accessibility.AccessibilityManager.<
init>
(AccessibilityManager.java:226)
at android.view.accessibility.AccessibilityManager.getInstance(AccessibilityManager.java:206)
at android.view.View.setFlags(View.java:9941)
at android.view.ViewGroup.initViewGroup(ViewGroup.java:536)
at android.view.ViewGroup.<
init>
(ViewGroup.java:525)
at android.view.ViewGroup.<
init>
(ViewGroup.java:520)
at android.view.ViewGroup.<
init>
(ViewGroup.java:516)
at android.view.ViewGroup.<
init>
(ViewGroup.java:512)
at android.widget.FrameLayout.<
init>
(FrameLayout.java:119)
at com.android.internal.policy.impl.PhoneWindow$DecorView.<
init>
(PhoneWindow.java:2341)
at com.android.internal.policy.impl.PhoneWindow.generateDecor(PhoneWindow.java:3639)
at com.android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.java:4026)
at com.android.internal.policy.impl.PhoneWindow.getDecorView(PhoneWindow.java:2052)
at android.support.v7.app.AppCompatDelegateImplV7.onCreate(AppCompatDelegateImplV7.java:148)
at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:60)
at com.gongxxing.gongxxing0922.MainActivity.onCreate(MainActivity.java:27)
at android.app.Activity.performCreate(Activity.java:6142)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1115)
我很遗憾忘记粘贴主要活动。
第27行是
public class MainActivity extends AppCompatActivity{@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
super.onCreate(savedInstanceState); 是第27行。
答案很抱歉回答这个老问题,但我在我的项目中解决了这个异常。
我认为导致例外的是我们在创建时使用我们活动的上下文。
我的代码是这样的:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
regToWx();
}private void regToWx(){
IWXAPIapi;
api = WXAPIFactory.createWXAPI(this, Constants.WX_APP_ID, true);
api.registerApp(Constants.WX_APP_ID);
String text = "123";
WXTextObject textObj = new WXTextObject();
textObj.text = text;
WXMediaMessage msg = new WXMediaMessage();
msg.mediaObject = textObj;
msg.description = text;
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.scene = SendMessageToWX.Req.WXSceneSession;
req.transaction = String.valueOf(System.currentTimeMillis());
req.message = msg;
api.sendReq(req);
}
由于
regToWx
方法需要通过this
创建一些东西,这是上下文,但我认为上下文不能在onCreate
方法中使用(在某些方面)。所以我只是把它放在一个线程中,然后问题就解决了。@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
new Thread(new Runnable() {
@Override
public void run() {regToWx();
}
}).start();
}
因此,尝试找出你在
context
方法中使用onCreate
所做的事情,将这些代码放在其中或者只是使代码异步。另一答案我得到了同样的错误。我发现它是由于我在清单文件中使用的属性android:sharedUserId =“com.something”。
假设您的应用程序的版本1在清单中具有android:sharedUserId并初始化ContentProvider。
现在,假设在版本2中,从清单中删除android:sharedUserId并尝试访问在版本1中创建的ContentProvider。
【在android加载布局时出现了一些错误,但在运行时没有效果】在这种情况下,最新版本将无法访问在版本1中创建的ContentProvider。
推荐阅读
- android中的屏幕兼容性问题
- Android(我应用中所有Spinners的全局风格)
- 将Visual Studio 2012附加到在Android移动设备上运行的Unity游戏中,以进行调试
- 在android studio中build.gradle中使用flavor维度
- 如何调试Google Apps脚本(又名Logger.log登录到哪里())
- 如何解决TCPDF错误(一些数据已经输出,无法发送PDF文件)
- 如何在Windows中配置NetBeans以将LESS文件自动编译为CSS
- 如何在Xampp Server中启用gzip压缩
- 如何解决错误1115(42000)(在PHPMyAdmin中导入SQL文件时,未知字符集:’utf8mb4′)