小编pen*_*hou的帖子

运行程序会发生什么?

我想在这里收集在Windows,Linux和OSX上运行可执行文件时会发生什么.特别是,我想完全理解操作的顺序:我的猜测是内核加载了可执行文件格式(PE,ELF或Mach-O)(但我忽略了ELF的各个部分(可执行文件和可链接格式)及其含义),然后你有动态链接器解析引用,然后__init运行可执行文件的部分,然后是main,然后是__fini,然后程序完成,但我确定它非常粗糙,也许是错的.

编辑:问题现在是CW.我正在填写linux.如果有人想为Win和OSX做同样的事情那就太棒了.

linux execution

38
推荐指数
4
解决办法
2万
查看次数

二进制XML文件行#17:由UnsupportedOperationException引起的类<unknown>错误:无法转换为维度:type = 0x2

我一直试图运行我的应用程序(android)但它崩溃时,以下异常

[logcat的]

  FATAL EXCEPTION: main
 android.view.InflateException: Binary XML file line #17: Error inflating class <unknown>
at android.view.LayoutInflater.createView(LayoutInflater.java:513)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:618)
at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
at emy.dt4it.healthytips.NavDrawerListAdapter.getView(NavDrawerListAdapter.java:46)
at android.widget.AbsListView.obtainView(AbsListView.java:1315)
at android.widget.ListView.measureHeightOfChildren(ListView.java:1198)
at android.widget.ListView.onMeasure(ListView.java:1109)
at android.view.View.measure(View.java:8171)
at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:578)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:362)
at android.view.View.measure(View.java:8171)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3132)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
at com.slidinglayer.SlidingLayer.onMeasure(SlidingLayer.java:1077)
at android.view.View.measure(View.java:8171)
at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:578)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:362)
at android.view.View.measure(View.java:8171)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3132)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
at android.view.View.measure(View.java:8171)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3132)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:245)
at android.view.View.measure(View.java:8171)
at android.view.ViewRoot.performTraversals(ViewRoot.java:801)
at android.view.ViewRoot.handleMessage(ViewRoot.java:1727)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at …
Run Code Online (Sandbox Code Playgroud)

android baseadapter

12
推荐指数
1
解决办法
3万
查看次数

如何在Firefox插件中实现Chrome扩展程序的chrome.tabs.sendMessage API

我正在使用Addon-Builder进行Firefox插件开发.我不知道如何在Firefox插件中实现Chrome扩展程序的chrome.tabs.sendMessage API.代码是这样的(代码在background.js中,类似于Firefox插件中的main.js):

function sendMessageToTabs(message, callbackFunc){
    chrome.tabs.query({}, function(tabsArray){
        for(var i=0; i<tabsArray.length; i++){
            //console.log("Tab id: "+tabsArray[i].id);
            chrome.tabs.sendMessage(tabsArray[i].id,message,callbackFunc);
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

那么,我怎样才能做到这一点?

tabs firefox-addon google-chrome-extension dom-events firefox-addon-sdk

3
推荐指数
1
解决办法
2659
查看次数

简单存储和localStorage有什么区别?

在chrome扩展开发中,我们可以localStorage用来存储我们需要的东西.我可以localStorage在使用Addon-Builder的firefox插件开发中使用吗?我看过很多firefox插件项目使用simple-storage,simple-storage和之间的区别是localStorage什么?

javascript html5 local-storage google-chrome-extension firefox-addon-sdk

2
推荐指数
1
解决办法
540
查看次数

如何将Chrome扩展程序(使用特定于Chrome的API)转换为Firefox附加组件?

我无法将复杂的Chrome扩展程序转换为Firefox附加组件.在Chrome扩展程序中,作者使用了一些Chrome API,例如

  • chrome.extension.sendMessage
  • chrome.browserAction.setIcon
  • webkitNotifications.createNotification
  • chrome.tabs.sendMessage
  • chrome.extension.onMessage.addListener
  • chrome.browserAction.onClicked.addListener
  • chrome.privacy.services.autofillEnabled.get
  • chrome.runtime.onInstalled.addListener
  • chrome.tabs.query
  • localStorage

等等.

我不知道如何在Firefox附加代码中实现这些方法.可以使用回调函数调用其中一些API.例如:

chrome.extension.sendMessage ( {
        type: "get.identitieswithurl",
        originUrl: lgmIdentitySave.originUrl,
        actionUrl: lgmIdentitySave.actionUrl
    }, 
    function (resultIdentities) {
        if(resultIdentities != null && resultIdentities.length > 0) {
            lgmIdentitiesPage = resultIdentities;
            fillFormsWithCredential(resultIdentities[0]);
            if(resultIdentities.length > 1 && lgmSuggestionSelectIdDismissed == false) {
                showSelectIdentitySuggestionBar();
            }
        }
    } 
);    
Run Code Online (Sandbox Code Playgroud)

这个问题,我知道Firefox代码可以像

// main add-on script
pageMod.PageMod({
    include: "*.org",
    contentScriptFile: self.data.url("my-script.js"),
    // Send the content script a message inside onAttach
    onAttach: function (worker) {
        worker.port.emit("replacePage", "Page matches …
Run Code Online (Sandbox Code Playgroud)

api firefox-addon google-chrome-extension firefox-addon-sdk content-script

0
推荐指数
1
解决办法
1946
查看次数