菜鸟教程小白 发表于 2022-12-13 05:16:53

ios - 如何在 IOS 操作扩展中托管应用向应用扩展发送数据


                                            <p><p>我已经完成了示例操作扩展应用程序。无法获取主机应用请求数据。我认为此代码存在问题。</p>

<p>主机应用请求代码</p>

<pre><code>NSDictionary *request = @{@&#34;username”:@“username”,@“password”:@“password”};
            UIActivityViewController *extensionController = [ initWithActivityItems:@ applicationActivities:nil];
         extensionController.popoverPresentationController.sourceView = self.view;
      ;
</code></pre>

<p>应用扩展代码</p>

<pre><code>NSExtensionItem *inputItem = self.extensionContext.inputItems;

    NSItemProvider *itemprovider = inputItem.attachments;

    [itemprovider loadItemForTypeIdentifier:(NSString *)kUTTypePropertyList options:nil completionHandler:^(NSDictionary *item, NSError *error) {

      NSDictionary *results = (NSDictionary *)item;

      NSLog(@“Host app Request Data=%@&#34;,results);

    }];
</code></pre>

<p>我不确定上面的代码有什么问题,谁能帮助我..谢谢</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>开启<strong>App Groups</strong>并使用<strong>NSUserDefaults</strong></p>

<ol>
<li><p>打开应用组并在主机目标和扩展目标功能中添加组名称</p></li>
<li><p>在宿主应用源中输入集合数据</p></li>
</ol>

<上一页>

   //使用我们的组用户默认值
    NSUserDefaults *defaults = [
    initWithSuiteName:@"group.com.organization.ProductName"];

   //设置问候语
    [默认 setObject:@"username"forKey:@"username"];
    [默认 setObject:@"password"forKey:@"password"];

   //同步
    [默认同步];

</pre>

<ol 开始=“3”>
<li>SomeExtension.m</li>
</ol>

<上一页>

   //使用我们的组用户默认值
    NSUserDefaults *defaults = [
    initWithSuiteName:@"group.com.organization.ProductName"];

   //获取问候语
    NSString *username = [默认 stringForKey:@"username"];
    NSString *password = [默认 stringForKey:@"password"];

   //检查问候语是否为空
    NSLog(@"用户名 = %@/密码 = %@", 用户名, 密码);

</pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何在 IOS 操作扩展中托管应用向应用扩展发送数据,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/28403395/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/28403395/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何在 IOS 操作扩展中托管应用向应用扩展发送数据