Discussion Forums  >  Plugins, Customizing, Source Code

Replies: 9    Views: 88

redspider
Android Fan
Profile
Posts: 13
Reg: Apr 03, 2015
The Dalles, OR
130
04/10/15 12:58 PM (9 years ago)

non coder question

If a person has some native android source code...is there a way easily for non coders put this in some kind of a plugin shell where would run or how would you incorporate a different kind of program like that in. if this is something that doesn't exist and it's too hard for non coders, could an end user shell framework be made were you can run applications from inside a plugin. not sure if this totally makes sense let me know if I need to explain it a bit more what I'm thinking of.
 
chris1
Code is Art
Profile
Posts: 3862
Reg: Aug 10, 2012
Austin, TX
50,120
like
04/10/15 01:09 PM (9 years ago)
How easy or hard that is really depends on the source code project. As a general rule, it's not easy for a non-coder to drop code into a project and get it to run. The "Blank Screen" plugin is designed for this purpose, but it's still a challenge if you aren't familiar with the basics of the programming language (Java or Objective-C). For your second question, it's not really plausible to run a complete app inside another app if that's what you're asking. If you have the source code for a complete app, for instance, you can't just add that into a larger project unless it was designed specially for that purpose. (It will be called a "library" or "sdk" if so).
 
CMCOFFEE
Android Fan
Profile
Posts: 2017
Reg: Jan 04, 2013
Amarillo, Texas
26,670
like
04/10/15 01:14 PM (9 years ago)
The plugins use "native" (java for android, objective c for iOS)code. You can use the the blank screen plugins to put your code in.you can also hire loads of developers here ------ edit: Chris R. beat me to it with a better explanation
 
redspider
Android Fan
Profile
Posts: 13
Reg: Apr 03, 2015
The Dalles, OR
130
like
04/10/15 01:24 PM (9 years ago)
Interesting. So I know from a coders standpoint running a program inside a program is weak sauce but from guys like me who cant really live without a coder on staff, its an interesting, but bloated idea I suppose. but on that node..CMCOFFEE it sounds like maybe the blank screen plugin would kind of do just that?
 
CMCOFFEE
Android Fan
Profile
Posts: 2017
Reg: Jan 04, 2013
Amarillo, Texas
26,670
like
04/10/15 02:55 PM (9 years ago)
I agree with Chris1, it depends on what the code is. even some things seen to users, users and non coders see as "easy", is hard work to code. Especially games...in my college android class, we're learning to code a blackjack game, not the most fancy, new game but man its taking forever and alot of logic ha.
 
Dusko
Veteran developer
Profile
Posts: 998
Reg: Oct 13, 2012
Beograd
22,680
like
04/10/15 08:48 PM (9 years ago)
>native android source code...is there a way easily for non coders put this in some kind of a plugin shell You already have answers by two "resident" coders for Android, so I'll try to be more concrete. In Android, the most basic notion is that of an activity, which is a screen and the code that makes that screen run, generally. So, one screen for login is an activity, another screen for logout is an activity, one screen for watching YouTube videos is activity, another for calendar events is an activity and so on. Buzztouch version 1.5 and 2.0 did exactly that -- every new screen or plugin, was an activity. In version 3.0 of Android, Google introduced fragments. It took a while, but Buzztouch caught up with that change and introduced its own new version 3.0, which supports fragments. In BT apps, now there is one basic activity and everything else is a fragment. You still can use activities and, really, for some things you just must, however, for the purpose of writing BT plugins, it's fragments all the way. It works great, however, there is a significant difference from coding activities to coding fragments. The most basic example is the notion of "this"; "this" in an activity points to the inner field of variables declared in the activity, and all the (older) code that you steal / take / re-purpose from GitHub will use "this" in that manner. If you decide to write a new activity in BT version 3.0, you will still use "this" as it is, which means that you can take the code from the Internet and it will run with only slight modifications. Enter now BT 3.0, in which all the screens are derived from exactly one activity. In that situation, "this" is not usable. Instead, you will have to put getActivity() instead of "this" into the source code which you are re-purposing from the Internet. Not a big problem? Well, in some cases, instead of getActivity() you will have to put getActivity().getApplicationContext() and in yet another set of circumstances, "this" will still be usable but may mean something else. Confusing? You bet. And don't even start me on Back button responses, which may require a totally new set of responses in a fragment, if you want your app to behave in a predictable way. Not to mention that you must document each and every change to a standard BT plugin because some of these changes reach deep down to the BT core code. And for your own sake, document various little additions to themes, strings, colors, menus, drawable images and so on; if you don't, you or your client will not be able to reproduce the desired behaviour of a new plugin and transfer it to new apps in the future. Just to illustrate, have a look here: https://www.buzztouch.com/files/howtos/Color_in_action_bar_Android.pdf which describes how to change colors in Android navbar and dives deep into the core code of BT in the process. All this to do and only for one small change in the app. Buzztouch open source approach is fantastic, but you have to know what you are doing, or hire people that can fill in the blanks for you.
 
Niraj
buzztouch Evangelist
Profile
Posts: 2943
Reg: Jul 11, 2012
Cerritos
37,930
like
04/10/15 11:24 PM (9 years ago)
Nice explanation, Dusko, Chris and Chris! Red Spider -- Right there are three pro developers you can hire for your Buzztouch needs. -- Niraj
 
redspider
Android Fan
Profile
Posts: 13
Reg: Apr 03, 2015
The Dalles, OR
130
like
04/11/15 12:51 PM (9 years ago)
word up gents. the gang may be small in numbers but big on skills. thanks!
 
SmugWimp
Smugger than thou...
Profile
Posts: 6316
Reg: Nov 07, 2012
Tamuning, GU
81,410
like
04/12/15 10:28 AM (9 years ago)
I started out life as a hardware guy, and later, got my first Apple IIe, and tried to program on it, but mostly ended up playing games. Then I upgraded to a Macintosh SE, and started learning to program in Pascal. I got ok, but not really good. Then I shifted to the PC platform and learned Visual Basic. That was fun. Before Buzztouch I never touched 'C' or any derivative. And I certainly still stink at it, lol! But I'm literate enough in Java and ObjC to be able to build (for the most part) whatever I need to get the job done. It wasn't overnight; it took an hour or two a day tinkering and playing with different code to see how it all worked. About a year after I joined, I released my first plugin 'Smug's Message Location'. It's free; grab it if you care. I did it for both iOS and Android, to get a feel of how things are done. My point being, It doesn't really matter 'what' you want to do, the Buzztouch 'foundation' is a solid platform that does a *lot* of stuff for you, and you can focus on your goals. Whether you decide to do it yourself, or contract out one of the many professionals that also use BT as a 'base' platform for their apps, you've found a great community in which to share your vision. All it takes is a little patience and persistence, and before you know it, you're in the app stores and counting downloads. Cheers! -- Smug
 
redspider
Android Fan
Profile
Posts: 13
Reg: Apr 03, 2015
The Dalles, OR
130
like
04/12/15 10:46 AM (9 years ago)
I hate to outdate us both but I was in that same era. I am guessing your about 44 based on your revelation. That makes me feel a bit better, however I wished I would have taken your route and done more coding,but thanks to platforms such as this old geezers may still be able to put something out. I am still cutting teeth on how a menu should look but hopefully I will make it.
 

Login + Screen Name Required to Post

pointerLogin to participate so you can start earning points. Once you're logged in (and have a screen name entered in your profile), you can subscribe to topics, follow users, and start learning how to make apps like the pros.