Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature/share-action-extension] Share Action Extension "Save to ownCloud" #1301

Merged
merged 9 commits into from
Dec 15, 2023
Merged
438 changes: 236 additions & 202 deletions CHANGELOG.md

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions enterprise/register/registerOwncloudApp.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
#!/usr/bin/env ruby

# Copyright (C) 2023, ownCloud GmbH.
#
# This code is covered by the GNU Public License Version 3.
#
# For distribution utilizing Apple mechanisms please see https://owncloud.org/contribute/iOS-license-exception/
# You should have received a copy of this license along with this program. If not, see <http://www.gnu.org/licenses/gpl-3.0.en.html>.

# Version 1.1.0

require 'spaceship'

class AppRegistration
Expand Down Expand Up @@ -304,3 +313,4 @@ def prepareProfile(bundle_id, profileFilename, cert)
register.prepareAppID("File Provider UI", "FileProviderUI.mobileprovision", groups, registrationType, "#{bundlePrefix}.ios-app.ownCloud-File-ProviderUI", cert)
register.prepareAppID("Intent", "Intent.mobileprovision", groups, registrationType, "#{bundlePrefix}.ios-app.ownCloud-Intent", cert)
register.prepareAppID("ShareExtension", "ShareExtension.mobileprovision", groups, registrationType,"#{bundlePrefix}.ios-app.ownCloud-Share-Extension", cert)
register.prepareAppID("ActionExtension", "ActionExtension.mobileprovision", groups, registrationType,"#{bundlePrefix}.ios-app.ownCloud-Action-Extension", cert)
3 changes: 3 additions & 0 deletions enterprise/resign/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ This script allows you to resign the ownCloud App IPA file with a different Appl

- `com.yourcompany.ios-app.ownCloud-Share-Extension`

- `com.yourcompany.ios-app.ownCloud-Action-Extension`

2. Generate one App Group:

- `group.com.yourcompany.ios-app`
Expand Down Expand Up @@ -51,6 +53,7 @@ Create a text file containing a list of line-break separated domain names (FQN)
- `FileProviderUI.mobileprovision`
- `Intent.mobileprovision`
- `ShareExtension.mobileprovision`
- `ActionExtension.mobileprovision`

5. Execute the script

Expand Down
4 changes: 2 additions & 2 deletions enterprise/resign/resignInspector.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
# For distribution utilizing Apple mechanisms please see https://owncloud.org/contribute/iOS-license-exception/
# You should have received a copy of this license along with this program. If not, see <http://www.gnu.org/licenses/gpl-3.0.en.html>.

VERSION="1.0.0"
VERSION="1.1.0"

#Define output formats
BOLD="$(tput bold)"
Expand Down Expand Up @@ -72,7 +72,7 @@ fi
APPPATH="$APPTEMP/Payload/ownCloud.app"
fi

declare -a LOCATIONS=( "$APPPATH/" "$APPPATH/PlugIns/ownCloud File Provider.appex" "$APPPATH/PlugIns/ownCloud File Provider UI.appex" "$APPPATH/PlugIns/ownCloud Intents.appex" "$APPPATH/PlugIns/ownCloud Share Extension.appex" );
declare -a LOCATIONS=( "$APPPATH/" "$APPPATH/PlugIns/ownCloud File Provider.appex" "$APPPATH/PlugIns/ownCloud File Provider UI.appex" "$APPPATH/PlugIns/ownCloud Intents.appex" "$APPPATH/PlugIns/ownCloud Share Extension.appex" "$APPPATH/PlugIns/ownCloud Action Extension.appex" );

echo "${SUCCESS}Checking entitlements…${NC}"
echo ""
Expand Down
9 changes: 5 additions & 4 deletions enterprise/resign/resignOwncloudApp
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
# For distribution utilizing Apple mechanisms please see https://owncloud.org/contribute/iOS-license-exception/
# You should have received a copy of this license along with this program. If not, see <http://www.gnu.org/licenses/gpl-3.0.en.html>.

VERSION="1.2.2"
VERSION="1.3.0"

#Define output formats
BOLD="$(tput bold)"
Expand Down Expand Up @@ -64,11 +64,12 @@ FILEPROVIDER_MOBILEPROVISION="$PROVISIONING_DIR/FileProvider.mobileprovision"
FILEPROVIDERUI_MOBILEPROVISION="$PROVISIONING_DIR/FileProviderUI.mobileprovision"
INTENT_MOBILEPROVISION="$PROVISIONING_DIR/Intent.mobileprovision"
SHAREEXTENSION_MOBILEPROVISION="$PROVISIONING_DIR/ShareExtension.mobileprovision"
ACTIONEXTENSION_MOBILEPROVISION="$PROVISIONING_DIR/ActionExtension.mobileprovision"
ASSOCIATED_DOMAINS="domains.txt"

declare -a MOBILEPROVISIONS=( "$DISTRIBUTION_MOBILEPROVISION" "$FILEPROVIDER_MOBILEPROVISION" "$FILEPROVIDERUI_MOBILEPROVISION" "$INTENT_MOBILEPROVISION" "$SHAREEXTENSION_MOBILEPROVISION" );
declare -a ENTITLEMENTS=( "ownCloud.entitlements" "ownCloud_File_Provider.entitlements" "ownCloud_File_Provider_UI.entitlements" "ownCloud_Intents.entitlements" "ownCloud_Share_Extension.entitlements" );
declare -a LOCATIONS=( "$APPDIR" "$APPDIR/PlugIns/ownCloud File Provider.appex" "$APPDIR/PlugIns/ownCloud File Provider UI.appex" "$APPDIR/PlugIns/ownCloud Intents.appex" "$APPDIR/PlugIns/ownCloud Share Extension.appex" );
declare -a MOBILEPROVISIONS=( "$DISTRIBUTION_MOBILEPROVISION" "$FILEPROVIDER_MOBILEPROVISION" "$FILEPROVIDERUI_MOBILEPROVISION" "$INTENT_MOBILEPROVISION" "$SHAREEXTENSION_MOBILEPROVISION" "$ACTIONEXTENSION_MOBILEPROVISION" );
declare -a ENTITLEMENTS=( "ownCloud.entitlements" "ownCloud_File_Provider.entitlements" "ownCloud_File_Provider_UI.entitlements" "ownCloud_Intents.entitlements" "ownCloud_Share_Extension.entitlements" "ownCloud_Action_Extension.entitlements" );
declare -a LOCATIONS=( "$APPDIR" "$APPDIR/PlugIns/ownCloud File Provider.appex" "$APPDIR/PlugIns/ownCloud File Provider UI.appex" "$APPDIR/PlugIns/ownCloud Intents.appex" "$APPDIR/PlugIns/ownCloud Share Extension.appex" "$APPDIR/PlugIns/ownCloud Action Extension.appex" );
declare -a BUNDLEIDS=();

# Abort script if script is running in a path which contains "Library", because this could cause resource fork problems
Expand Down
52 changes: 50 additions & 2 deletions fastlane/Fastfile
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,8 @@ platform :ios do
"com.owncloud.ios-app.ownCloud-File-Provider" => "match AdHoc com.owncloud.ios-app.ownCloud-File-Provider",
"com.owncloud.ios-app.ownCloud-File-ProviderUI" => "match AdHoc com.owncloud.ios-app.ownCloud-File-ProviderUI",
"com.owncloud.ios-app.ownCloud-Intents" => "match AdHoc com.owncloud.ios-app.ownCloud-Intents",
"com.owncloud.ios-app.ownCloud-Share-Extension" => "match AdHoc com.owncloud.ios-app.ownCloud-Share-Extension"
"com.owncloud.ios-app.ownCloud-Share-Extension" => "match AdHoc com.owncloud.ios-app.ownCloud-Share-Extension",
"com.owncloud.ios-app.ownCloud-Action-Extension" => "match AdHoc com.owncloud.ios-app.ownCloud-Action-Extension"
#Add more Provisioning Profiles when extensions are added
}
}
Expand Down Expand Up @@ -258,6 +259,8 @@ platform :ios do
ENTERPRISE_INTENT_PROFILE: "match AppStore com.owncloud.ios-app.ownCloud-Intents",
ENTERPRISE_SHARE_EXTENSION_ID: "com.owncloud.ios-app.ownCloud-Share-Extension",
ENTERPRISE_SHARE_EXTENSION_PROFILE: "match AppStore com.owncloud.ios-app.ownCloud-Share-Extension",
ENTERPRISE_ACTION_EXTENSION_ID: "com.owncloud.ios-app.ownCloud-Action-Extension",
ENTERPRISE_ACTION_EXTENSION_PROFILE: "match AppStore com.owncloud.ios-app.ownCloud-Action-Extension",
ENTERPRISE_APP_FW_ID: "com.owncloud.ownCloudApp",
ENTERPRISE_TEAM: "4AP2STM4H5",
ENTERPRISE_IDENTITY: "Apple Distribution: ownCloud GmbH (4AP2STM4H5)",
Expand All @@ -283,6 +286,8 @@ platform :ios do
ENTERPRISE_INTENT_PROFILE: "match AppStore com.owncloud.ios-app.emm.ownCloud-Intents",
ENTERPRISE_SHARE_EXTENSION_ID: "com.owncloud.ios-app.emm.ownCloud-Share-Extension",
ENTERPRISE_SHARE_EXTENSION_PROFILE: "match AppStore com.owncloud.ios-app.emm.ownCloud-Share-Extension",
ENTERPRISE_ACTION_EXTENSION_ID: "com.owncloud.ios-app.emm.ownCloud-Action-Extension",
ENTERPRISE_ACTION_EXTENSION_PROFILE: "match AppStore com.owncloud.ios-app.emm.ownCloud-Action-Extension",
ENTERPRISE_APP_FW_ID: "com.owncloud.ownCloudApp.emm",
ENTERPRISE_TEAM: "4AP2STM4H5",
ENTERPRISE_IDENTITY: "Apple Distribution: ownCloud GmbH (4AP2STM4H5)",
Expand All @@ -308,6 +313,8 @@ lane :owncloud_online_build do
ENTERPRISE_INTENT_PROFILE: "ownCloud online AppStore Intents",
ENTERPRISE_SHARE_EXTENSION_ID: "online.owncloud.ios-app.ShareExtApp",
ENTERPRISE_SHARE_EXTENSION_PROFILE: "ownCloud online AppStore Share Ext",
ENTERPRISE_ACTION_EXTENSION_ID: "online.owncloud.ios-app.Action-Extension",
ENTERPRISE_ACTION_EXTENSION_PROFILE: "ownCloud online AppStore Action Extension",
ENTERPRISE_APP_FW_ID: "online.owncloud.ios-app.ownCloudApp",
ENTERPRISE_TEAM: "4AP2STM4H5",
ENTERPRISE_IDENTITY: "Apple Distribution: ownCloud GmbH",
Expand All @@ -333,6 +340,8 @@ end
ENTERPRISE_INTENT_PROFILE: "Adhoc ownCloud iOS App Intents",
ENTERPRISE_SHARE_EXTENSION_ID: "com.owncloud.ios-app.ownCloud-Share-Extension",
ENTERPRISE_SHARE_EXTENSION_PROFILE: "Adhoc ownCloud iOS App Share Extension",
ENTERPRISE_ACTION_EXTENSION_ID: "com.owncloud.ios-app.ownCloud-Action-Extension",
ENTERPRISE_ACTION_EXTENSION_PROFILE: "Adhoc ownCloud iOS App Action Extension",
ENTERPRISE_APP_FW_ID: "com.owncloud.ownCloudApp",
ENTERPRISE_TEAM: "4AP2STM4H5",
ENTERPRISE_IDENTITY: "Apple Distribution: ownCloud GmbH",
Expand All @@ -356,6 +365,8 @@ end
ENTERPRISE_INTENT_PROFILE: "match AppStore com.owncloud.ios-app.ownCloud-Intents",
ENTERPRISE_SHARE_EXTENSION_ID: "com.owncloud.ios-app.ownCloud-Share-Extension",
ENTERPRISE_SHARE_EXTENSION_PROFILE: "match AppStore com.owncloud.ios-app.ownCloud-Share-Extension",
ENTERPRISE_ACTION_EXTENSION_ID: "com.owncloud.ios-app.ownCloud-Action-Extension",
ENTERPRISE_ACTION_EXTENSION_PROFILE: "match AppStore com.owncloud.ios-app.ownCloud-Action-Extension",
ENTERPRISE_APP_FW_ID: "com.owncloud.ownCloudApp",
ENTERPRISE_TEAM: "4AP2STM4H5",
ENTERPRISE_IDENTITY: "Apple Distribution: ownCloud GmbH (4AP2STM4H5)",
Expand Down Expand Up @@ -389,6 +400,8 @@ end
ENTERPRISE_INTENT_PROFILE: "Adhoc ownCloud iOS App Intents",
ENTERPRISE_SHARE_EXTENSION_ID: "com.owncloud.ios-app.ownCloud-Share-Extension",
ENTERPRISE_SHARE_EXTENSION_PROFILE: "Adhoc ownCloud iOS App Share Extension",
ENTERPRISE_ACTION_EXTENSION_ID: "com.owncloud.ios-app.ownCloud-Action-Extension",
ENTERPRISE_ACTION_EXTENSION_PROFILE: "Adhoc ownCloud iOS App Action Extension",
ENTERPRISE_APP_FW_ID: "com.owncloud.ownCloudApp",
ENTERPRISE_TEAM: "4AP2STM4H5",
ENTERPRISE_IDENTITY: "iPhone Distribution: ownCloud GmbH",
Expand Down Expand Up @@ -426,6 +439,8 @@ end
ENTERPRISE_INTENT_PROFILE = values[:ENTERPRISE_INTENT_PROFILE]
ENTERPRISE_SHARE_EXTENSION_ID = values[:ENTERPRISE_SHARE_EXTENSION_ID]
ENTERPRISE_SHARE_EXTENSION_PROFILE = values[:ENTERPRISE_SHARE_EXTENSION_PROFILE]
ENTERPRISE_ACTION_EXTENSION_ID = values[:ENTERPRISE_ACTION_EXTENSION_ID]
ENTERPRISE_ACTION_EXTENSION_PROFILE = values[:ENTERPRISE_ACTION_EXTENSION_PROFILE]
ENTERPRISE_APP_FW_ID = values[:ENTERPRISE_APP_FW_ID]
ENTERPRISE_APP_SHARED_ID = "com.owncloud.ownCloudAppShared"
ENTERPRISE_TEAM = values[:ENTERPRISE_TEAM]
Expand Down Expand Up @@ -557,6 +572,7 @@ end
set_info_plist_value(path: "ownCloud File Provider/Info.plist", key: "CFBundleShortVersionString", value: customAppVersionNumber)
set_info_plist_value(path: "ownCloud File Provider UI/Info.plist", key: "CFBundleShortVersionString", value: customAppVersionNumber)
set_info_plist_value(path: "ownCloud Share Extension/Info.plist", key: "CFBundleShortVersionString", value: customAppVersionNumber)
set_info_plist_value(path: "ownCloud Action Extension/Info.plist", key: "CFBundleShortVersionString", value: customAppVersionNumber)
set_info_plist_value(path: "ownCloud Intents/Info.plist", key: "CFBundleShortVersionString", value: customAppVersionNumber)
end

Expand All @@ -580,6 +596,7 @@ end
set_info_plist_value(path: "ownCloud File Provider/Info.plist", key: "CFBundleVersion", value: BUILD_NUMBER)
set_info_plist_value(path: "ownCloud File Provider UI/Info.plist", key: "CFBundleVersion", value: BUILD_NUMBER)
set_info_plist_value(path: "ownCloud Share Extension/Info.plist", key: "CFBundleVersion", value: BUILD_NUMBER)
set_info_plist_value(path: "ownCloud Action Extension/Info.plist", key: "CFBundleVersion", value: BUILD_NUMBER)
set_info_plist_value(path: "ownCloud Intents/Info.plist", key: "CFBundleVersion", value: BUILD_NUMBER)
end

Expand All @@ -601,6 +618,9 @@ end
set_info_plist_value(path: "ownCloud Share Extension/Info.plist", key: "CFBundleDisplayName", value: "Share to " + appName)
set_info_plist_value(path: "ownCloud Share Extension/Info.plist", key: "CFBundleName", value: appName)

set_info_plist_value(path: "ownCloud Action Extension/Info.plist", key: "CFBundleDisplayName", value: "Save to " + appName)
set_info_plist_value(path: "ownCloud Action Extension/Info.plist", key: "CFBundleName", value: appName)

felix-schwarz marked this conversation as resolved.
Show resolved Hide resolved
update_app_identifier(
xcodeproj: "ownCloud.xcodeproj",
plist_path: "ownCloud/Resources/Info.plist",
Expand Down Expand Up @@ -637,6 +657,12 @@ end
app_identifier: ENTERPRISE_SHARE_EXTENSION_ID
)

update_app_identifier(
xcodeproj: "ownCloud.xcodeproj",
plist_path: "ownCloud Action Extension/Info.plist",
app_identifier: ENTERPRISE_ACTION_EXTENSION_ID
)

update_app_group_identifiers(
entitlements_file: "ownCloud/ownCloud.entitlements",
app_group_identifiers: [APP_GROUP_IDENTIFIERS]
Expand Down Expand Up @@ -682,6 +708,15 @@ end
identifiers: [ENTERPRISE_TEAM + "." + APP_GROUP_IDENTIFIERS]
)

update_app_group_identifiers(
entitlements_file: "ownCloud Action Extension/ownCloud Action Extension.entitlements",
app_group_identifiers: [APP_GROUP_IDENTIFIERS]
)
update_keychain_access_groups(
entitlements_file: "ownCloud Action Extension/ownCloud Action Extension.entitlements",
identifiers: [ENTERPRISE_TEAM + "." + APP_GROUP_IDENTIFIERS]
)

set_info_plist_value(path: "ownCloud File Provider/Info.plist", key: "OCAppGroupIdentifier", value: OC_APP_GROUP_IDENTIFIERS)
set_info_plist_value(path: "ownCloud File Provider/Info.plist", key: "OCKeychainAccessGroupIdentifier", value: OC_APP_GROUP_IDENTIFIERS)
set_info_plist_value(path: "ownCloud File Provider/Info.plist", key: "NSExtension", subkey: "NSExtensionFileProviderDocumentGroup", value: APP_GROUP_IDENTIFIERS)
Expand All @@ -691,6 +726,8 @@ end
set_info_plist_value(path: "ownCloud Intents/Info.plist", key: "OCKeychainAccessGroupIdentifier", value: OC_APP_GROUP_IDENTIFIERS)
set_info_plist_value(path: "ownCloud Share Extension/Info.plist", key: "OCAppGroupIdentifier", value: OC_APP_GROUP_IDENTIFIERS)
set_info_plist_value(path: "ownCloud Share Extension/Info.plist", key: "OCKeychainAccessGroupIdentifier", value: OC_APP_GROUP_IDENTIFIERS)
set_info_plist_value(path: "ownCloud Action Extension/Info.plist", key: "OCAppGroupIdentifier", value: OC_APP_GROUP_IDENTIFIERS)
set_info_plist_value(path: "ownCloud Action Extension/Info.plist", key: "OCKeychainAccessGroupIdentifier", value: OC_APP_GROUP_IDENTIFIERS)
set_info_plist_value(path: "ownCloud/Resources/Info.plist", key: "OCAppGroupIdentifier", value: OC_APP_GROUP_IDENTIFIERS)
set_info_plist_value(path: "ownCloud/Resources/Info.plist", key: "OCKeychainAccessGroupIdentifier", value: OC_APP_GROUP_IDENTIFIERS)

Expand Down Expand Up @@ -753,6 +790,16 @@ end
targets: ["ownCloud Share Extension"]
)

automatic_code_signing(
path: "ownCloud.xcodeproj",
use_automatic_signing: false,
team_id: ENTERPRISE_TEAM,
code_sign_identity: ENTERPRISE_IDENTITY,
profile_name: ENTERPRISE_ACTION_ACTION_PROFILE,
bundle_identifier: ENTERPRISE_ACTION_EXTENSION_ID,
targets: ["ownCloud Action Extension"]
)

automatic_code_signing(
path: "ownCloud.xcodeproj",
use_automatic_signing: false,
Expand Down Expand Up @@ -820,7 +867,8 @@ end
ENTERPRISE_APP_ID => ENTERPRISE_APP_PROFILE,
ENTERPRISE_FP_ID => ENTERPRISE_FP_PROFILE,
ENTERPRISE_INTENT_ID => ENTERPRISE_INTENT_PROFILE,
ENTERPRISE_SHARE_EXTENSION_ID => ENTERPRISE_SHARE_EXTENSION_PROFILE
ENTERPRISE_SHARE_EXTENSION_ID => ENTERPRISE_SHARE_EXTENSION_PROFILE,
ENTERPRISE_ACTION_EXTENSION_ID => ENTERPRISE_ACTION_EXTENSION_PROFILE
}
}
)
Expand Down
40 changes: 40 additions & 0 deletions ownCloud Action Extension/Info.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>OCKeychainAccessGroupIdentifier</key>
<string>group.com.owncloud.ios-app</string>
<key>OCHasFileProvider</key>
<true/>
<key>OCAppComponentIdentifier</key>
<string>shareExtension</string>
<key>CFBundleDisplayName</key>
<string>Save to $(APP_PRODUCT_NAME)</string>
<key>OCAppIdentifierPrefix</key>
<string>$(AppIdentifierPrefix)</string>
<key>OCAppGroupIdentifier</key>
<string>group.com.owncloud.ios-app</string>
<key>NSExtension</key>
<dict>
<key>NSExtensionAttributes</key>
<dict>
<key>NSExtensionActivationRule</key>
<string>SUBQUERY (
extensionItems,
$extensionItem,
SUBQUERY (
$extensionItem.attachments,
$attachment,
(
ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO &quot;public.data&quot;
)
).@count == $extensionItem.attachments.@count
).@count &gt; 0</string>
</dict>
<key>NSExtensionPrincipalClass</key>
<string>ShareExtensionViewController</string>
<key>NSExtensionPointIdentifier</key>
<string>com.apple.ui-services</string>
</dict>
</dict>
</plist>
22 changes: 22 additions & 0 deletions ownCloud Action Extension/de.lproj/InfoPlist.strings
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
/*
InfoPlist.strings
ownCloud

Created by Matthias Hühne on 11/20/2023.
Copyright © 2020 ownCloud GmbH. All rights reserved.
*/

/*
* Copyright (C) 2020, ownCloud GmbH.
*
* This code is covered by the GNU Public License Version 3.
*
* For distribution utilizing Apple mechanisms please see https://owncloud.org/contribute/iOS-license-exception/
* You should have received a copy of this license along with this program. If not, see <http://www.gnu.org/licenses/gpl-3.0.en.html>.
*
*/

"CFBundleDisplayName" = "Speichern in ownCloud";

"The Share Extension is not available on this system." = "Die Erweiterung ist auf diesem System nicht verfügbar.";
"Share Extension unavailable" = "Erweiterung nicht verfügbar";
22 changes: 22 additions & 0 deletions ownCloud Action Extension/en.lproj/InfoPlist.strings
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
/*
InfoPlist.strings
ownCloud

Created by Matthias Hühne on 11/20/2023.
Copyright © 2020 ownCloud GmbH. All rights reserved.
*/

/*
* Copyright (C) 2020, ownCloud GmbH.
*
* This code is covered by the GNU Public License Version 3.
*
* For distribution utilizing Apple mechanisms please see https://owncloud.org/contribute/iOS-license-exception/
* You should have received a copy of this license along with this program. If not, see <http://www.gnu.org/licenses/gpl-3.0.en.html>.
*
*/

"CFBundleDisplayName" = "Save to ownCloud";

"The Share Extension is not available on this system." = "The Share Extension is not available on this system.";
"Share Extension unavailable" = "Share Extension unavailable";
14 changes: 14 additions & 0 deletions ownCloud Action Extension/ownCloud Action Extension.entitlements
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.application-groups</key>
<array>
<string>group.com.owncloud.ios-app</string>
</array>
<key>keychain-access-groups</key>
<array>
<string>$(AppIdentifierPrefix)group.com.owncloud.ios-app</string>
</array>
</dict>
</plist>
Loading
Loading