[Feature] Use hard-coded string `md.obsidian` instead of android package name

Platform

[ ] iOS
[x] Android

Obsidian Mobile version: v1.2.0 (50)


I understand that my use-case is a bit unusual so many Obsidian users won’t even notice the fix.

I need to be able to have two vaults opened at the time. I could not find any way to do it, so I cloned Obsidian app using http://appcloner.app/ .

It works almost fine with one problem: as cloned app has to have a different package name, it changes from md.obsidian to md.obsidiao.

This leads to the problem everywhere where code depends on the package name.

Searching for Community packages stopped working

When I debugged why is that happening I found that it fetches the following url, which clearly doesn’t exist

https://raw.githubusercontent.com/obsidianmd/obsidiao-releases/HEAD/community-plugin-deprecation.json

I don’t see how to make it fixed without Obsidian developers’ input.

Your app cloner is probably configured to use regex and is recognizing the dot as “any character”, which is replacing md/obsidian with md/obsidiao.

Try replacing the package ID as md\.obsidian instead.

Android doesn’t allow to have two apps with the same package name, so it has to be changed

The issue is that your cloner doesn’t just change the package name, but changes other stuff too.

As obsidian is not open source I can’t check if you use package name as a variable or it’s purely a misbehavior in the app cloner that just did incorrect string replacement

If you can’t control how the cloner renames the package ID, then there is nothing we can do to help. Your cloner is mistakingly changing things that are not exact matches of the package ID, but instead matches any character at the dot (which is typically because they’re using regex). I would suggest using a different way to change the package ID.

I don’t think the problem is with the package id. I will decompile resulted APK to check my theory. I’ll post back here

I don’t think there’s any way we could have written the URL with obsidianmd/obsidiao-releases instead of the correct one - if the cloned version of the app tries to fetch that URL then it’s definitely your cloner app that incorrectly replaces the link.

Yes, I am sorry, I was wrong. I looked into the cloned apk. They incorrectly modified urls in the app.js. I will report a bug in AppCloner

Yes, it is confirmed it was a flaw in AppCloner, which is fixed in version 2.14.5