小编Uli*_*ile的帖子

我可以使用UIActivityViewController在Facebook上分享吗?

我正在尝试使用UIActivityViewController在Facebook上分享.当我使用的时候

UIImage* image = [UIImage imageNamed:@"image1.png"];
NSArray* dataToShare = @[@"test",image];
UIActivityViewController* activityViewController =
[[UIActivityViewController alloc] initWithActivityItems:dataToShare
                                  applicationActivities:nil];
activityViewController.excludedActivityTypes = @[UIActivityTypePrint, UIActivityTypeCopyToPasteboard, UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll];
Run Code Online (Sandbox Code Playgroud)

虽然我没有排除"UIActivityTypePostToFacebook",但我看不到"在Facebook上分享"图标.Facebook没有预定义的UIActivity吗?

谢谢

facebook ios6 uiactivityviewcontroller

7
推荐指数
2
解决办法
6947
查看次数

在AWS EMR集群上使用SparkLauncher时缺少SPARK_HOME

我在Spark 2.0.0中使用EMR 5.0。我正在尝试使用org.apache.spark.launcher.SparkLauncher从Scala spark应用程序运行子spark应用程序

我需要使用setSparkHome设置SPARK_HOME:

 var handle = new SparkLauncher()
    .setAppResource("s3://my-bucket/python_code.py")
    .setAppName("PythonAPP")
    .setMaster("spark://" + sparkSession.conf.get("spark.driver.host") +":"+ sparkSession.conf.get("spark.driver.port"))
    .setVerbose(true)
    .setConf(SparkLauncher.EXECUTOR_CORES, "1")
    .setSparkHome("/srv/spark") // not working
    .setDeployMode("client")
    .startApplication(
      new SparkAppHandle.Listener() {

        override def infoChanged(hndl: SparkAppHandle): Unit = {
          System.out.println(hndl.getState() + " new  state !")
        }

        override def stateChanged(hndl: SparkAppHandle): Unit = {
          System.out.println(hndl.getState() + "    new  state !")
        }
      })
Run Code Online (Sandbox Code Playgroud)

在哪里可以找到我的Spark Home的适当路径?该集群由1个主服务器,1个核心服务器和1个任务服务器构建。

谢谢!

amazon-web-services amazon-emr emr apache-spark pyspark

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

使用多个图层时无法释放未使用的CALayer内存

我在我的应用程序中使用多个CALayer,其中包含大型UIImage作为内容.不幸的是,当我不需要图层和图像时 - 内存不会被释放.

我用来创建图层的代码是:

UIImage *im = [UIImage imageNamed:@"image_1.jpg"];
CALayer * l = [CALayer layer];
[l setBounds:CGRectMake(0, 0, 1024, 768)];
[l setPosition:CGPointMake(512, 384)];
[l setAnchorPoint:CGPointMake(0.5, 0.5)];
[l setHidden:NO];
[l setContents:(id) im.CGImage];
[self.layer addSublayer:l]; // self is a subclass of UIView
[self.tmpArr addObject:l]; // self.tmpArr contains the layers I am using (one in this example)
Run Code Online (Sandbox Code Playgroud)

我用来释放图层的代码,它的内容是:

CALayer * l = [self.tmpArr objectAtIndex:i];
[l removeFromSuperlayer];
[l setHidden:YES];
[l setContents:nil];
[self.tmpArr removeAllObjects];
Run Code Online (Sandbox Code Playgroud)

当我使用仪器内存分析器时,我看到实际内存在创建图层时会增加,但在释放时不会减少.因为我使用ARC,所以无法使用发行版.我在这做错了什么?

谢谢.

memory-management objective-c instruments calayer uiimage

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