小编Rob*_*Rob的帖子

RuntimeException:必须在调用activateApp之前初始化Facebook sdk

在已经拆我的应用程序为2个不同的模块(一module和的 application一个),我不得不添加tools:node="replace"<application>节点,因为我是有清单合并的问题(与Facebook和火力地堡).

自从我这样做以来,一切正常但我的应用程序现在在运行时因此异常而崩溃: The Facebook sdk must be initialized before calling activateApp

但是我正在这样初始化应用程序(在类扩展中Application):

FacebookSdk.setApplicationId(getString(R.string.facebook_app_id));
AppEventsLogger.activateApp(this); // this = instance of Application
Run Code Online (Sandbox Code Playgroud)

我以前什么都没改过,以前它工作得很好,但现在我得到了这个崩溃.我不知道该怎么做......没有发现任何关于这个可以帮助我.

谢谢你的帮助.

编辑:这是相关的清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest package="package"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" >

    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <uses-permission android:name="android.permission.CAMERA" />

    <uses-permission android:name="android.permission.FLASHLIGHT" />

    <uses-permission android:name="android.permission.INTERNET" />

    <uses-permission android:name="android.permission.READ_CONTACTS" />

    <uses-permission android:name="android.permission.RECORD_AUDIO" />

    <uses-permission android:name="android.permission.VIBRATE" />

    <uses-permission android:name="android.permission.WAKE_LOCK" />

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />

    <uses-permission android:name="package.permissions.C2D_MESSAGE" /> …
Run Code Online (Sandbox Code Playgroud)

android facebook

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

无法加载捆绑包“ MyProjectUITests”,因为它已损坏或缺少必要的资源。尝试重新安装捆绑包

我愿意在我的应用程序中添加单元和UI测试。

我首先成功配置了单元测试,然后尝试对UI测试进行同样的操作。这是我的Podfile,添加了新的UI Testing Bundle目标后:

platform :ios, '8.0'
use_frameworks!
inhibit_all_warnings!

def shared_pods
pod 'Bolts'
pod 'Branch'
pod 'FBSDKCoreKit'
pod 'FBSDKLoginKit'
pod 'FBSDKShareKit'
pod 'GoogleAnalytics'
pod 'GooglePlaces'
pod 'Parse'
pod 'Toast-Swift'
end

target 'MyTarget' do
shared_pods
end

target 'MyTargetUITests' do
shared_pods
end

target 'MyTargetUnitTests' do
shared_pods
end
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试运行自动创建的MyProjectUITests测试用例时,它仅包含基本设置,甚至没有@testable import MyProject

import XCTest

class MyProjectUITests: XCTestCase {

    override func setUp() {
        continueAfterFailure = false
        XCUIApplication().launch()
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

正在运行测试...无法加载捆绑包“ MyProjectUITests”,因为它已损坏或缺少必要的资源。尝试重新安装捆绑软件。

(dlopen_preflight(/var/containers/Bundle/Application/5A1FE39F-E675-4A47-9BF4-FBCDB96F5821/MyProjectUITests-Runner.app/PlugIns/MyProjectUITests.xctest/MyProjectUITests):库未加载:@ rpath / libswiftSwiftOnoneSupport.dylib

引用自:/private/var/containers/Bundle/Application/5A1FE39F-E675-4A47-9BF4-FBCDB96F5821/MyProjectUITests-Runner.app/PlugIns/MyProjectUITests.xctest/Frameworks/Toast_Swift.framework/Toast_Swift

原因:找不到图片)

怎么了?谢谢你的帮助。

编辑:作为信息,当我 …

ios xcode-ui-testing

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

无法打开文件“ Pods-xxx.xcconfig”,因为没有这样的文件:/ Pods在我的配置路径中出现两次

我有不同的目标,因此在我的应用程序中有不同的配置。

每次运行时pod install,最终都会为每个配置产生一个调试和发布警告,告诉我:

无法打开文件“ Pods- {MyTarget} .debug.xcconfig”,因为没有这样的文件。

/ {MyAppPath} / Pods / Pods / Target支持文件/Pods-{MyTarget}/Pods-{MyTarget}.debug.xcconfig

似乎/Pods是在配置路径中添加了两次(来自项目级别的“信息”部分),我不知道为什么:

在此处输入图片说明

但是,要解决此问题,我只需要手动选择下面的选项,就可以了:

在此处输入图片说明

在此处输入图片说明

然后警告消失,我可以再次构建该项目。

是什么导致此问题?

谢谢你的帮助!

ios cocoapods

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

如何“推送”片段?

我主要是一名学习Android开发和片段的iOS开发人员。我有这个课:

public class MyTableFragment extends ListFragment
{
    List<String> dataList;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,  
    Bundle savedInstanceState) 
    { 
        dataList = new ArrayList<Item>();
        dataList.add("Row 1");
        dataList.add("Row 2");
        dataList.add("Row 3");
        dataList.add("Row 4");

        ArrayAdapter<String> adapter = new ArrayAdapter<String>(inflater.getContext(),
               android.R.layout.simple_list_item_1, dataList);  
        setListAdapter(adapter);  

        return super.onCreateView(inflater, container, savedInstanceState);
    }

    @Override
    public void onListItemClick(ListView l, View v, int position, long id) 
    {
        if(position == 0) {
            // What to do here? 
            // I have a MyNewFragment() class that I want to push
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

现在基本上 …

android android-fragments

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

Android:如何在滚动视图中获取视图的 Y 位置?

我在 scrollView 中有两个文本视图,我想在点击它们时获得它们的 Y 位置。

但是我在调​​试控制台中尝试了很多东西,总是返回0:

子视图.getY()

subView.getScrollY()

该怎么办?

谢谢你的帮助。

android scrollview

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

Xcode:为什么我的启动参数在记录 UI 测试时不起作用?

当我计划在我的应用程序中设置 UI 测试,并使用启动参数来模拟一些数据时,我在构建一个简单的测试项目时意识到了一些事情:

在应用程序目标中:

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        let uiTesting = ProcessInfo.processInfo.arguments.contains("ui-testing")
        view.backgroundColor = uiTesting ? .yellow : .white
    }
}
Run Code Online (Sandbox Code Playgroud)

在 UI 测试目标中:

class UITestWithLaunchArgumentsProjectUITests: XCTestCase {

    override func setUp() {
        let app = XCUIApplication()
        app.launchArguments.append("ui-testing")
        app.launch()
    }


    func testExample() {
        sleep(20)
    }
}
Run Code Online (Sandbox Code Playgroud)

多亏了这一点,我意识到,如果我运行,testExample()背景颜色会按预期变成黄色。但是,当我使用记录UI测试工具时,却没有。

有谁知道为什么,以及最终如何在记录 UI 测试时使用启动参数?

感谢您的帮助。

xcode ios xcode-ui-testing

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