Giter VIP home page Giter VIP logo

appdeck's Introduction

THIS PROJECT IS DEPRECATED

Appdeck is not maintained anymore.

You can still use the AppDeck, but you should not rely on any AppDeck Cloud Services component.


AppDeck iOS/Android application library

Last Version: 1.7.2

About

AppDeck is a mobile hybrid application engine for iOS and Android.

http://www.appdeck.mobi/

AppDeck can be view as a framework like JQuery Mobile writen in native code instead of Javascript.

AppDeck still use HTML5 for page rendering, but everything else is in native code: Menu, Scroll, network, Photo Browser ...

You will find two version of AppDeck, one for iOS and one for Android.

Requirement

AppDeck for iOS

  • You must have a Mac with xCode installed: it's free, you can install it using App Store.

AppDeck for Android

  • Android Studio: http://developer.android.com/sdk/
  • PHP: When you build your app, a php script will be use to embed ressources into your app. On Mac php is already installed by default. On linux you can use your build in packgage system (Ex: on Ubuntu: apt-get install php5); On windows, you can install PHP using http://www.wampserver.com/.

appdeck's People

Contributors

mdekermadec avatar mobideck avatar okip08 avatar seb-sans avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

appdeck's Issues

Popups not working as expected on iPhone

On the current iOS version of your app, in the kitchensink "Pop up" example, I can only open one popup. When it is open and I tap "Open another one", the current popup closes and an error is shown in the log: "Try to load two screen at same time".

The Android version works as expected.

Resources$NotFoundException

Referring to #41. I asked for a new build and reinstalled it on my Android phone and it still crashed. Its giving the same exception as previously, except I noticed that there is a slight change in the stack trace. I see that it crashes now on android.support.v4.content.res.ResourcesCompat.getDrawable(ResourcesCompat.java:62) where previously it crashed on android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:323).
So I am certain that I am using the new build. I pasted the new stack trace below:

05-11 23:02:58.988 13823-13823/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: co.za.financiallyfree.ffreeapp, PID: 13823
java.lang.RuntimeException: Unable to start activity ComponentInfo{co.za.financiallyfree.ffreeapp/com.mobideck.appdeck.Loader}: android.content.res.Resources$NotFoundException: File res/drawable/ic_arrow_back_white_24dp.xml from drawable resource ID #0x7f02009c
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2429)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493)
at android.app.ActivityThread.access$800(ActivityThread.java:166)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5584)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.content.res.Resources$NotFoundException: File res/drawable/ic_arrow_back_white_24dp.xml from drawable resource ID #0x7f02009c
at android.content.res.Resources.loadDrawable(Resources.java:3453)
at android.content.res.Resources.getDrawable(Resources.java:1896)
at android.support.v4.content.res.ResourcesCompat.getDrawable(ResourcesCompat.java:62)
at com.mobideck.appdeck.Loader.onCreate(Loader.java:421)
at android.app.Activity.performCreate(Activity.java:5447)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2393)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493) 
at android.app.ActivityThread.access$800(ActivityThread.java:166) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:136) 
at android.app.ActivityThread.main(ActivityThread.java:5584) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:515) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084) 
at dalvik.system.NativeStart.main(Native Method) 
Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #2: invalid drawable tag vector
at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:969)
at android.graphics.drawable.Drawable.createFromXml(Drawable.java:913)
at android.content.res.Resources.loadDrawable(Resources.java:3449)
at android.content.res.Resources.getDrawable(Resources.java:1896) 
at android.support.v4.content.res.ResourcesCompat.getDrawable(ResourcesCompat.java:62) 
at com.mobideck.appdeck.Loader.onCreate(Loader.java:421) 
at android.app.Activity.performCreate(Activity.java:5447) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2393) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493) 
at android.app.ActivityThread.access$800(ActivityThread.java:166) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:136) 
at android.app.ActivityThread.main(ActivityThread.java:5584) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:515) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084) 
at dalvik.system.NativeStart.main(Native Method)

Slide issue

There is a issue on iphone version about the slide api. It's works fine in Android but iphone, don't work.
Thanks !

(Alert From Google Play) Please migrate your app(s) to MoPub v4.4.0 or higher

https://support.google.com/faqs/answer/6345928

How to address MoPub vulnerabilities in your apps

This information is intended for developers of apps that utilize any version of MoPub, an ad platform, that precedes 4.4.0. These versions contain a security vulnerability.

Please migrate your app(s) to MoPub v4.4.0 or higher as soon as possible and increment the version number of the upgraded APK. Beginning July 11, 2016, Google Play will block publishing of any new apps or updates that use older versions of MoPub.

The vulnerability was addressed in MoPub 4.4.0. The latest versions of the MoPub SDK can be downloaded here. To confirm the version number if you're building using the Jcenter AAR, you can check your Gradle config and make sure it points to 4.4.0. To confirm the version number if you're building directly from source or not using Gradle, you can check com.mopub.common.MoPub.java for SDK_VERSION.

If you need more information, you can contact MoPub support by emailing [email protected]. If you’re using a 3rd party library that bundles MoPub, you’ll need to upgrade it to a version that bundles MoPub 4.4.0 or higher.

To confirm you’ve upgraded correctly, submit the updated version to the Developer Console and check back after five hours. If the app hasn’t been correctly upgraded, we will display a warning.

The vulnerability is due to unsanitized default WebView settings. An attacker may exploit this vulnerability by serving a malicious JavaScript code in an advertising creative, making it possible to infer the existences of privacy-sensitive local resources on the devices. For Android devices with the prior versions of API 16, the attacker can even access local resources. For other technical questions, you can post to Stack Overflow and use the tags “android-security” and “MoPub.”

While these specific issues may not affect every app that uses MoPub, it’s best to stay up to date on all security patches. Apps with vulnerabilities that expose users to risk of compromise may be considered in violation of our Malicious Behavior policy and section 4.4 of the Developer Distribution Agreement.

Apps must also comply with the Developer Distribution Agreement and Developer Program Policies. If you feel we have sent this warning in error, contact our policy support team through the Google Play Developer Help Center.

"loading widget" on Android

On Android, i want to show the loading widget during an ajax request, so i used the functions "app.loading.show();" and "app.loading.hide();" like mentioned in the docs, but it's not working, it shows nothing.

Splash screen

Hello,

How it is possible to add a splash screen during the loading of the app?

Thank you

Send sms

Hi,
I try to send sms with appDeck but when I use
sms:
in a link, appDeck try to open another page as a web link, s it does never call the sms function of the phone.

Is there a way to do it ?

Regards

Bottom Menu

Is there any way to have a bottom menu or "tab bar" - the same style as the Facebook app uses (at least on iOS)?

Thank you!

Localhost

Has anybody figured out how to test appdeck on localhost. My application is in development so not on the web yet but on xamp localhost. Any idea how i could test appdeck?

Location Service

Hello,

is there a way to get the user location from the app ?
the idea is to show the user location in a map, or display it in text field so it can be submitted.

Thank you

Resources$NotFoundException

I created an Android build to publish. I then installed the APK on my phone so I could test the
built app. When the app starts up, it crashes immediately. Any idea what I can do to solve the problem?
The file called "ic_arrow_back_white_24dp.xml" seems to be the issue. I dont use any file named as such so I presume it is used by AppDek when building the app? I checked the log to see what happens and I find the following exception in my logs when trying to run the app:

05-11 10:06:48.032 1926-1926/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: co.za.mydomain.myapp, PID: 1926
java.lang.RuntimeException: Unable to start activity ComponentInfo{co.za.mydomain.myapp/com.mobideck.appdeck.Loader}: android.content.res.Resources$NotFoundException: File res/drawable/ic_arrow_back_white_24dp.xml from drawable resource ID #0x7f02009c
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2429)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493)
at android.app.ActivityThread.access$800(ActivityThread.java:166)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5584)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.content.res.Resources$NotFoundException: File res/drawable/ic_arrow_back_white_24dp.xml from drawable resource ID #0x7f02009c
at android.content.res.Resources.loadDrawable(Resources.java:3453)
at android.content.res.Resources.getDrawable(Resources.java:1896)
at android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:323)
at com.mobideck.appdeck.Loader.onCreate(Loader.java:419)
at android.app.Activity.performCreate(Activity.java:5447)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2393)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493) 
at android.app.ActivityThread.access$800(ActivityThread.java:166) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:136) 
at android.app.ActivityThread.main(ActivityThread.java:5584) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:515) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084) 
at dalvik.system.NativeStart.main(Native Method) 
Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #2: invalid drawable tag vector
at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:969)
at android.graphics.drawable.Drawable.createFromXml(Drawable.java:913)
at android.content.res.Resources.loadDrawable(Resources.java:3449)
at android.content.res.Resources.getDrawable(Resources.java:1896) 
at android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:323) 
at com.mobideck.appdeck.Loader.onCreate(Loader.java:419) 
at android.app.Activity.performCreate(Activity.java:5447) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2393) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493) 
at android.app.ActivityThread.access$800(ActivityThread.java:166) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:136) 
at android.app.ActivityThread.main(ActivityThread.java:5584) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:515) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084) 
at dalvik.system.NativeStart.main(Native Method)

Cache issue on AppDeck iOS

On my App iOS 1279, i have a login page with disabled cache (value = -1 on the config screen).
When i go to the page and start typing parameters to log in, i loose the focus on input and the form is reset. I think that this is due to an attempt from AppDeck to display from cache (despite the disabled cache on config) which refreshes the page and resets content.

Loading Menu URL via Javascript?

Hi there!

Thank you for appdeck; it's been a pleasure to use so far!
I just had a use case that I couldn't find in the API's.
Certain pages in our site/app would have different left and right menus, so I wanted to know if there's an API call I can use to push a new URL to each menu?

I've been tinkering and tried this but it didn't work:
appDeckAPICall("slidemenu", {command: "load", url: "http://www.google.com"});

Is there more documentation about the options we have using appDeckAPICall?

Thanks again for the great work!

Menu issues

Hi !
I have a right menu and a main page.
In my main page I have a button which has as function :
app.clearcache();
app.page.rootandreload("index.html");

So, when i click on it, my right menu become index.html...
An idea ?

EDIT : My bad, just use app.page.root("index.html");

Request Issue

in this url ( http://www.tool-fitness.com.dev.dck.io/fitness.html ), i can do requests to sort products based on "price, brand, name etc..". it worked fine until the last release of Appdeck!

With the older release, it works fine and this is what it display :

2015-04-03 12:49:23.596 ToolFitness[7104:607] shouldStartLoadWithRequest: webView: 0x7881daa0 method: GET url: http://www.tool-fitness.com.dev.dck.io/Page1-CatBrowse.asp?Catid=203&ob=1&sw=1#tri - navigation : 0 - cache: 0

The same action with the last Appdeck release displays this :

2015-04-03 12:50:08.380 ToolFitness[7117:607] shouldStartLoadWithRequest: webView: 0x7a9120d0 method: GET url: http://www.tool-fitness.com.dev.dck.io/Page1-CatBrowse.asp?Catid=203&ob=2&sw=0#tri - navigation : 0 - cache: 0
2015-04-03 12:50:08.381 ToolFitness[7117:607] *** WebKit discarded an uncaught exception in the webView:decidePolicyForNavigationAction:request:frame:decisionListener: delegate: *** -[__NSCFString substringToIndex:]: Index 78 out of bounds; string length 59

API geo ?

Salut !
Je voulais savoir si un API pour la géolocalisation était prévue ?
Et est-ce que l'appli peut tourner en fond ?

Merci ;)

Only image files allowed when using html5 file input

Under Android 5.1.1, the html5 file input only allows image files to be selected with the native file picker. It works fine on a webpage using Chrome Mobile (I can pick any type of file), but when I use the same code inside my app I can only pick images.

Can you advise?

App crash on galaxy Tab

I tried on a Android Phone with Android 4.1.2 and it's working well :) Then I install the same application (I also tried all apk, arm, crosswalk, uni) on the Tablett Galaxy Tab with the same version Android 4.1.2 and I get a black screen and then a popup tell me that the app as stopped.

"appdeck_android" body class

Whether on Android or iOS device, the same "appdeck_android" class is applied to html body.
(tested on iOS 8.4 and iOS 9.2)

App rejected by "iOS Advertising Identifier but does not include ad functionality."

Can you help me guys. i want to upload the app without ads and in the appdeck tab "advertisement" > configuration its disabled but i received this notice from apple:

In addition, we found that your app uses the iOS Advertising Identifier but does not include ad functionality. This does not comply with the terms of the iOS Developer Program License Agreement, as required by the App Store Review Guidelines.

Specifically, section 3.3.12 of the iOS Developer Program License Agreement states:

"You and Your Applications (and any third party with whom you have contracted to serve advertising) may use the Advertising Identifier, and any information obtained through the use of the Advertising Identifier, only for the purpose of serving advertising. If a user resets the Advertising Identifier, then You agree not to combine, correlate, link or otherwise associate, either directly or indirectly, the prior Advertising Identifier and any derived information with the reset Advertising Identifier."

Note: iAd does not use the AdSupport framework, ASIdentifierManager, or the Advertising Identifier. Therefore they are not required for iAd implementations and should not be included in your app for iAd support.

If your app is serving ads, please:

  • Ensure that you have tested your app on a device, not just the simulator, and that you have removed all previous versions of your app prior to testing
  • Provide us the steps to locate ads in your app

If your app does not serve ads, please check your code - including any third-party libraries - to remove any instances of:

class: ASIdentifierManager
selector: advertisingIdentifier
framework: AdSupport.framework

If you are planning to incorporate ads in a future version, please remove the Advertising Identifier from your app until you have included ad functionality.

To help locate the Advertising Identifier, use the “nm” tool. For information on the “nm” tool, please see the nm man page.

If you do not have access to the libraries' source, you may be able to search the compiled binary using the "strings" or "otool" command line tools. The "strings" tool lists the methods that the library calls, and "otool -ov" will list the Objective-C class structures and their defined methods. These techniques can help you narrow down where the problematic code resides.

apk

is possible to download apk for self distribute?

Menu with anchor

Hi,
Thank you so much for this amazing project.
I am trying to create a menu with anchor (so I will load just one page and display the content faster).
But I don't manage to do it.

Is there a way to do it easily?

Regards

Sub domain link

Is it possible to sub domain links (like ex. "s1.domain.com", application domain is "domain.com") on click to open in application, not to suggest to open with browser?

Can the page knows it have been opened by appdeck?

Hi,
I really need the page opened by appdeck could not being open by other navigators (on a mobile or a desktop).

So I did not find any way to tell the app "if it's appdeck, ok but of not, redirect to 404 page".

Thank you for all your work.

Problems with Channels example in kitchensink

When I test the channels on your Android app (current version), I get this error dialog when I tap any of the buttons: "Failed to get channels: key not found, this api only work in AppDeck app".

The iphone version's first two buttons work as expected. The last two ("chan4") throw an error in the log.

rotation

Hi,
I need to black the rotation of the app in portrait.
Is there a way to do it ?

I have ever try to use the json file but noting change.
I try to use the meta tag but nothing change.

So is there a way to do this with a undocumented appDeck function ?

Regards

Zoom

It appears to be that the pinch zoom is not implemented!

Sharing content on iOS7

On iPhone 4 ( iOS 7.1.2) the "app.share" function does not work. the app seems to force close with this issue.

ios app doesn't open

HI

I'm using IoS 9 beta on my iPhone 6 and I can;t get the app to open.

is this a common issue on IoS 9 ?

Thanks

Graham

How to fix build?

Build Log:
....
FAILURE: Build failed with an exception.

  • Where:
    Build file '/appdeckbuild/src/appdeck-android/app/build.gradle' line: 96

  • What went wrong:
    A problem occurred configuring project ':app'.

    Cannot invoke method multiply() on null object

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

Right menu not showing

Hello,

I just want to disabled the left menu, so I leave the URL empty and I put the URL of my menu in the right menu section, but the left menu still appearing on the home page, and the right menu is not there.

Icon is standard appdeck icon

Hi,

When compiling a new version of my app, I now suddenly get the standard appdeck icon in stead of my own icon. Any ideas?

Apk file seems too big

One or two page web app built size is around 45 MBs in apk file which seems high. Project name: Match Stars
astraura

Certificate expires to soon

Hi guys,

I'm trying to upload the newly created apk at the Google developer console, but it keeps repeating that the generated certificate is expiring to soon. Any ideas how to solve this?

Thanks in advance!

Site source variable

Hi,

My app has to connect to a customer specific location for it's website source depending on a preference or variable. I tried to implement this using a Appdeck preference but had no success as of yet. The source location works just fine, but when i try to redirect to another domain / website, nothing happens. Is this possible?

Cannot get appstore.ipa

Hey guys,

I'm having trouble getting my appstore.ipa package.

The build log has the following error:

--- xcodebuild: WARNING: -exportArchive without -exportOptionsPlist is deprecated
error: archive not found at path '/appdeckbuild/src/appdeck-ios/build/AppDeck.xcarchive'
** EXPORT FAILED **

Open link in a different app?

Is it possible to force a link to open in an external browser? What about forcing a link to open in a different app, such as a file manager?

If so, how?

I'm asking because I need to allow users of my app to download/unzip zip files.

Advertising on AppDeck Cloud Services

When I click on "Enable Ads" on AppDeck Cloud Services, the setting doesnt stay on Enabled.
When navigate away from the Ads configuration screen and go back, it is turned off again?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.