Skip to content

A small and handy tool to copy files with "almost" no restrictions on Zebra devices (limited to the MANAGE_ALL_FILES permission scope). The tool includes a chmod functionality to change file permission. The copy is triggered by intents or through the managed configuration of an EMM.

Notifications You must be signed in to change notification settings

ltrudu/ZebraFileCopy

Repository files navigation

Please be aware that this library / application / sample is provided as a community project without any guarantee of support

All content under this repository's root folder is subject to the Development Tool License Agreement. By accessing, using, or distributing any part of this content, you agree to comply with the terms of the Development Tool License Agreement.


Zebra File Copy


Documentation:

• 1: Setup.

• 2: How to setup Zebra ERDP

• 3: How to setup Enterprise Browser

• 4: ADB: Copy Paste what you need.

• 5: Managed Configuration


StageNow profiles samples available at the following link StageNowProfiles


1: Setup

To setup the ZebraFileCopy, you have to install the latest apk in the Releases page of this repository.

Once installed you'll need to start it at least once to have the application silently aquire its permissions and register the necessary broadcast receivers.

This step is mandatory.

You can run the app with:

• Adb with the following command:

 adb shell am start -n com.zebra.zebrafilecopy.ext/com.zebra.zebrafilecopy.SplashActivity

• Your favorire EMM with the following XML: StartZebraFileCopy

• Or scan the following barcode on StageNow:

PDF417

image

Javascript JS PDF417

image

Setup ERDP

To setup ERDP, first install the ZebraFileCopy and launch it once as explained in this documentation.

Then you'll have to upload your MotoRDP.xml file to the Documents folder as Documents/MotoRDP.xml

You can use the following methods to setup ERDP:

• Adb with the following command:

 adb shell am broadcast -a com.zebra.zebrafilecopy.copyfile --es source "/sdcard/Documents/MotoRDP.xml" --es destination "/enterprise/usr/MotoRDP.xml" --es chmod "0666"

• Your favorire EMM with the following XML: ZebraFCSetupERDP

• Or scan the following barcode on StageNow:

PDF417

image

Javascript JS PDF417

image

Setup Enterprise Browser

To setup Enterprise Browser, first install the ZebraFileCopy and launch it once as explained in this documentation.

Then you'll have to copy all your files in the following folder: Documents/enterprisebrowser

This folder will contain the Config.xml file and all other files that you need for your setup.

We are going to use the copy folder feature of ZebraFileCopy so all files and folders inside Documents/enterprisebrowser will be copied recursively to the Enterprise Browser configuration folder.

All existing files will be overwriten and this folder will be used in priority by Enterprise Browser, since we will use the enterprise partition, the settings will persist accross reboot and enterprise reset (or reset from settings).

If you need to delete the folder, you can try the experimental DeleteBroadcast receiver (WIP, not actually documented, check the code for more information).

To setup Enteprise Browser you can use the following methods:

• Adb with the following command:

adb shell am broadcast -a com.zebra.zebrafilecopy.copyfile --es source "/sdcard/Documents/enterprisebrowser" --es destination "/enterprise/device/enterprisebrowser" --es usemx "true"

• Your favorire EMM with the following XML: ZebraFileCopy_EnterpriseBrowser

• Or scan the following barcode on StageNow:

PDF417

image

Javascript JS PDF417

image

Copy Paste what you need

Use intent to copy files.

adb shell am broadcast -a com.zebra.zebrafilecopy.copyfile --es source "/sdcard/Documents/MotoRDP.xml" --es destination "/enterprise/usr/MotoRDP.xml"

Use intent to copy files and change its permission using a numerical chmod.

chmod should be a numerical value 0XXX with the octal representation of permissions.

Recommended chmod is 0666.

adb shell am broadcast -a com.zebra.zebrafilecopy.copyfile --es source "/sdcard/Documents/MotoRDP.xml" --es destination "/enterprise/usr/MotoRDP.xml" --es chmod "0666"

Use intent to copy files and change its permission using a unix notation chmod.

chmodstring should be a text value of 10 characters begining whith - with this structure -XXXXXXXXX where X can be rwxst depending on the position.

Read linux documentation for more information.

Recommended chmodunix is -rw-rw-rw-.

adb shell am broadcast -a com.zebra.zebrafilecopy.copyfile --es source "/sdcard/Documents/MotoRDP.xml" --es destination "/enterprise/usr/MotoRDP.xml" --es chmodunix "-rw-rw-rw-"

Go to the site: https://chmod-calculator.app/ to calculate the CHMOD.

Use intent to copy files with MX FileMgr.

adb shell am broadcast -a com.zebra.zebrafilecopy.copyfile --es source "/sdcard/Documents/MotoRDP.xml" --es destination "/enterprise/usr/MotoRDP.xml" --es usemx "true"

Use intent to deploy Enteprise Browser configuration folder with MX FileMgr.

adb shell am broadcast -a com.zebra.zebrafilecopy.copyfile --es source "/sdcard/Documents/enterprisebrowser" --es destination "/enterprise/device/enterprisebrowser" --es usemx "true"

Managed Configuration


To be able to process managed configuration settings and updates, the app need to be launched to register to the updates events.

You can do it with your favorite EMM:

  • Action: android.intent.action.MAIN
  • Category: android.intent.category.LAUNCHER
  • Package Name: com.zebra.zebrafilecopy.ext
  • Activity : com.zebra.zebrafilecopy.ext/com.zebra.zebrafilecopy.SplashActivity

Or use the following XML with OEMConfig passthrough if you want to start the application using MX :

<wap-provisioningdoc>
  <characteristic version="10.5" type="Intent">
    <parm name="Action" value="StartActivity" />
    <parm name="ActionName" value="android.intent.action.MAIN" />
    <parm name="Package" value="com.zebra.zebrafilecopy.ext" />
    <parm name="Class" value="com.zebra.zebrafilecopy.SplashActivity" />
  </characteristic>
</wap-provisioningdoc>

About

A small and handy tool to copy files with "almost" no restrictions on Zebra devices (limited to the MANAGE_ALL_FILES permission scope). The tool includes a chmod functionality to change file permission. The copy is triggered by intents or through the managed configuration of an EMM.

Topics

Resources

Stars

Watchers

Forks

Languages