Giter Club home page Giter Club logo

mobile's Introduction

Minds

Minds is an open-source, encrypted and reward-based social networking platform. https://minds.com

Docs

Full documentation can be found at https://developers.minds.com/. We suggest getting started at the introduction.

Repositories

Minds is split into multiple repositories:

  • Engine - Backend code & APIs
  • Front - Client side Angular2 web app
  • Sockets - WebSocket server for real-time communication
  • Mobile - React Native mobile apps

Development Installation

See our installation guide to get your local stack up and running

Troubleshooting

Having trouble with your local stack? See troubleshooting

Contributing

If you'd like to contribute to the Minds project, check out how to contribute or head right over to the Minds Open Source Community. If you've found or fixed a bug, let us know in the Minds Help and Support Group!

Security reports

Please report all security issues to [email protected].

License and Copyright

General license and copyright information is located here, and the AGPLv3 fine print is available here. In addition, please see the license file of each repository.

mobile's People

Contributors

alejandronegri avatar alexisrcausa avatar edgebal avatar eiennohi avatar markharding avatar narc88 avatar ottman 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  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  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 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

mobile's Issues

Add Google Cast support

Since Minds has its own slimmed-down YouTube alternative, it would be great to be able to queue up content to watch on the big screen. If possible, I propose allowing users to cast videos from the Minds app to compete with YouTube's ability to do so.

(bug): Headers and Footers missing in profile screens

Hi everyone,
The lack of headers and footers in the case of profile screens and footers on notification screens adds extra steps and complexity to the app as well as making it harder to see the back button, time and other UI elements, lowering the user experience.

minds_app_screenshot_5

minds_app_screenshot_6

Opens to white screen.

No matter what Node version I use including every dep to latest most newest it always gives me a APK which when installed and then opened loads a white screen with a blue bar at the top. I have spent several hours now trying to get a APK that does not load to a white screen. I have tried building on Both Windows and Linux. Both build fine and produce the APK's in output folder but none of them will get past the white screen... This is in regards to "Minds 2.0" built from this source repo.

Conversations

  • Basic framework and pages
  • Improve UI
  • Integrate with Crypto service #2

Client-side public key verification

Let's assume an attacker (TAO at NSA, for example) compromises the server that the Minds client communicates with. What can be done to prevent them from replacing the public key that other clients receive with one of their own?

Typical case:

Alice -> Server: give me Bob's public key
Server -> Alice: here you go ----- BEGIN RSA PUBLIC KEY --- ...

Approaches that work (but some might not be the best UX):

I would encourage you to carefully study what TextSecure does. https://github.com/WhisperSystems/TextSecure/wiki/ProtocolV2

Crash: android.content.res.Resources$NotFoundException

android.content.res.Resources$NotFoundException: Resource ID #0x7f020041
at android.content.res.Resources.getValue(Resources.java:1163)
at android.content.res.Resources.getDrawable(Resources.java:713)
at org.apache.cordova.splashscreen.SplashScreen.onConfigurationChanged(SplashScreen.java:186)
at org.apache.cordova.PluginManager.onConfigurationChanged(PluginManager.java:507)
at org.apache.cordova.CordovaActivity.onConfigurationChanged(CordovaActivity.java:456)
at android.app.ActivityThread.performConfigurationChanged(ActivityThread.java:3879)
at android.app.ActivityThread.handleConfigurationChanged(ActivityThread.java:3960)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1317)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5118)
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:790)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:606)
at dalvik.system.NativeStart.main(Native Method)

Mobile app stuck in white screen when running on IOS emulator.

Hey there,
I recently downloaded the mobile app and tried to run it locally. Since I couldn't find setup instructions these are the steps I followed:

1- downloaded folder into Minds/
2- downloaded dependencies (cordova, ionic, grunt, etc)
3- on minds/mobile-master:
-npm install ios-sim
-cordova platform add ios
-cordova build ios
4- Opened /minds/mobile-master/platforms/ios on XCode, built and ran on emulator

The screen doesn't switch from the initial load. The xcode terminal didn't output any exceptions, so I don't know what errors to look up. Regardless, I'm attaching a screenshot just in case.
Any help will be greatly appreciated.
Thanks!

xcode_terminal_screenshot

Inviting contacts can cause crash

java.lang.RuntimeException: Unable to resume activity {com.minds.mobile/com.minds.mobile.MainActivity}: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1000, result=-1, data=Intent { dat=content://com.android.contacts/contacts/lookup/2773r7275-2D2741372F3D3D273F292F494D.3280i6834d40844fcf7/7275 flg=0x1 }} to activity {com.minds.mobile/com.minds.mobile.MainActivity}: java.lang.NullPointerException
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2812)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2845)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2262)
at android.app.ActivityThread.access$800(ActivityThread.java:139)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1210)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5086)
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:785)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1000, result=-1, data=Intent { dat=content://com.android.contacts/contacts/lookup/2773r7275-2D2741372F3D3D273F292F494D.3280i6834d40844fcf7/7275 flg=0x1 }} to activity {com.minds.mobile/com.minds.mobile.MainActivity}: java.lang.NullPointerException
at android.app.ActivityThread.deliverResults(ActivityThread.java:3432)
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2788)
... 12 more
Caused by: java.lang.NullPointerException
at org.apache.cordova.contacts.ContactManager.onActivityResult(ContactManager.java:178)
at org.apache.cordova.CordovaInterfaceImpl.onActivityResult(CordovaInterfaceImpl.java:120)
at org.apache.cordova.CordovaActivity.onActivityResult(CordovaActivity.java:321)
at android.app.Activity.dispatchActivityResult(Activity.java:5446)
at android.app.ActivityThread.deliverResults(ActivityThread.java:3428)
... 13 more

Reported devices:
Moto G (falcon_cdma) - Android 4.4

Crear la app Android nativa

Hola, estuve revisando la aplicacion en mi dispositivo android(Nexus 6) y noto que la app se laguea un poco o va mas lento de lo normal, creo que seria bueno desarrollar la app android de forma nativa ya que ademas de ir mucho mas rapida y fluida se podrian emplear a la perfeccion las nuevas lineas de diseño para Android Material Design, entre otras cosas que podrian mejorar la experiencia de usuario. Yo los podria ayudar ya que soy desarrollador de Aplicaciones Android y lo se hacer de forma nativa.
I am sorry, but i do not speak english only speak spanish. Try translated

Inability To Access Links On Notifications

As per report on Minds by @AndyMoores; I cannot access the posts notifications links

andymoores said
(Support & Bugs)
Mar 6, 2017, 1:23:49 AM
I've noticed while using the app on my iphone that if you click on an item in the notification screen nothing happens. It would be nice if you were taken to the post when clicking on it.

I download and install the iphone app myself and I can confirm the issue;

Eduardo Bonsi @eduardobonsi Mar 6, 2017, 12:57:01 PM

You're right about that! I am on the mobile iPhone app and the notifications links doesn't work! @mark @john, @ottman ? Here is the issue: If someone post a request, as an example,

Namma posted in Support & Bugs
Mar 6, 2017, 12:41:00 PM just posted this request but I cannot access her request from the mobile app. It seems that the link is not there!

Release it on F-Droid

This might help people who can't/don't want to use Google Play services because it's blocked in their Country or have a Custom rom installed.

java.lang.NullPointerException: Cyanogenmod camera access crash

On avatar selection reports crash report:

java.lang.RuntimeException: Unable to resume activity {com.minds.mobile/com.minds.mobile.MainActivity}: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=18, result=-1, data=Intent { dat=content: flg=0x1 }} to activity {com.minds.mobile/com.minds.mobile.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void org.apache.cordova.CallbackContext.success(java.lang.String)' on a null object reference
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3224)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3257)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2479)
at android.app.ActivityThread.access$800(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1359)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:155)
at android.app.ActivityThread.main(ActivityThread.java:5696)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
Caused by: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=18, result=-1, data=Intent { dat=content: flg=0x1 }} to activity {com.minds.mobile/com.minds.mobile.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void org.apache.cordova.CallbackContext.success(java.lang.String)' on a null object reference
at android.app.ActivityThread.deliverResults(ActivityThread.java:3881)
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3197)
... 11 more
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void org.apache.cordova.CallbackContext.success(java.lang.String)' on a null object reference
at org.apache.cordova.camera.CameraLauncher.processResultFromGallery(CameraLauncher.java:613)
at org.apache.cordova.camera.CameraLauncher.onActivityResult(CameraLauncher.java:695)
at org.apache.cordova.CordovaInterfaceImpl.onActivityResult(CordovaInterfaceImpl.java:120)
at org.apache.cordova.CordovaActivity.onActivityResult(CordovaActivity.java:321)
at android.app.Activity.dispatchActivityResult(Activity.java:6160)
at android.app.ActivityThread.deliverResults(ActivityThread.java:3877)
... 12 more

Add the minds android app on f-droid

F-droid is an app repository that only allows for free and opensource android programs that respect the user's freedom. It personally think it would fit perfectly.

Sharing to Minds from another app on Android has no result

It appears any app using Intent.ACTION_SHARE isn't handled properly when the app opens.
Steps to reproduce: open any app with native sharing capability (YouTube, Wikipedia, etc.) and launch the sharing flow. Choose Minds as the app to share to, then wait. The app opens, but no dedicated share flow pops up such as the post being pre-populated with the shared content or link.

My guess is this is intended behavior, but this doesn't fit with Android's sharing paradigm and expected user behavior for the platform.

Consider using libsodium instead of RSA-PKCS1

Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding");

Referring to (Updated) Cryptographic Right Answers:

  • If you're going to use RSA, use RSA-OAEP, not RSA-PKCS1
  • ECB mode should never be used for encrypting sensitive information

If you would like, Paragon Initiative Enterprises can audit your entire application and harden your cryptography protocols while preventing other security risks (gratis).

iOS error decrypting messages specifically sent from android

iOS uses the openssl library, android uses Java's Security javax.cipher library. Both use RSA and encrypt/decrypt, but iOS is unable to decipher from android encrypted messages. No clear error is given except:

Decrypt error: error:0407A079:rsa routines:func(122):reason(121) ((null))

Android messages work when decrypted on the site.

Current working directory is not a Cordova-based project.

This is my system information:

$ npm -v && ionic -v && cordova -v
4.0.5
2.1.18

6.4.0

When I try to do cordova build ios or cordova build I get this:

$ cordova build ios
Error: Current working directory is not a Cordova-based project.
$ cordova build
Error: Current working directory is not a Cordova-based project.

junit.framework.AssertionFailedError: App crashes on webview creations for certain devices

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.minds.mobile/com.minds.mobile.MainActivity}: java.lang.RuntimeException: Failed to create webview. 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2316)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2376)
at android.app.ActivityThread.access$800(ActivityThread.java:147)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1281)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5253)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
Caused by: java.lang.RuntimeException: Failed to create webview. 
at org.apache.cordova.CordovaWebViewImpl.createEngine(CordovaWebViewImpl.java:82)
at org.apache.cordova.CordovaActivity.makeWebViewEngine(CordovaActivity.java:191)
at org.apache.cordova.CordovaActivity.makeWebView(CordovaActivity.java:187)
at org.apache.cordova.CordovaActivity.init(CordovaActivity.java:135)
at org.apache.cordova.CordovaActivity.loadUrl(CordovaActivity.java:209)
at com.minds.mobile.MainActivity.onCreate(MainActivity.java:32)
at android.app.Activity.performCreate(Activity.java:5975)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2269)
... 10 more
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
at org.apache.cordova.CordovaWebViewImpl.createEngine(CordovaWebViewImpl.java:80)
... 18 more
Caused by: junit.framework.AssertionFailedError: Please extend XWalkActivity for shared mode
at junit.framework.Assert.fail(Assert.java:50)
at org.xwalk.core.XWalkCoreWrapper.initEmbeddedMode(XWalkCoreWrapper.java:111)
at org.xwalk.core.XWalkPreferences.setValue(XWalkPreferences.java:105)
at org.crosswalk.engine.XWalkCordovaView.setGlobalPrefs(XWalkCordovaView.java:40)
at org.crosswalk.engine.XWalkCordovaView.<init>(XWalkCordovaView.java:51)
at org.crosswalk.engine.XWalkWebViewEngine.<init>(XWalkWebViewEngine.java:56)
... 21 more

Reported platforms:

Android 5.0
Android 4.4

Possibly x86 architecture.

Posts

  • Capture
    • video
    • images
  • News/Activity

Configuration and Builds

Need a secure build system so we can push to git and also keep api keys secret.

Suggest:

.gitignore:
environments/*
!environments/default.json
!environments/README.md

minds-build-env.js

minds-build-env.js is created on each build.

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.